Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bermigrasi dari Oracle ke MySQL

Oracle tidak menyediakan utilitas unload out-of-the-box.

Ingatlah tanpa info lengkap tentang lingkungan Anda (versi Oracle? platform server? berapa banyak data? tipe data apa?) semuanya di sini adalah YMMV dan Anda ingin mencobanya di sistem Anda untuk kinerja dan waktu.

Poin saya 1-3 hanyalah ide pergerakan data umum. Poin 4 adalah metode yang akan mengurangi waktu henti atau gangguan menjadi menit atau detik.

1) Ada utilitas pihak ke-3 yang tersedia. Saya telah menggunakan beberapa di antaranya tetapi yang terbaik bagi Anda untuk memeriksanya sendiri untuk tujuan yang Anda maksudkan. Beberapa produk pihak ketiga tercantum di sini:OraFaq . Sayangnya banyak dari mereka berjalan di Windows yang akan memperlambat proses pembongkaran data kecuali server DB Anda ada di windows dan Anda dapat menjalankan utilitas beban langsung di server.

2) Jika Anda tidak memiliki tipe data kompleks seperti LOB maka Anda dapat menggulung sendiri dengan SQLPLUS. Jika Anda melakukan tabel pada satu waktu maka Anda dapat dengan mudah memparalelkannya. Topik telah dikunjungi di situs ini mungkin lebih dari sekali, berikut adalah contohnya:Linky

3) Jika Anda 10g+ maka Tabel Eksternal mungkin merupakan cara yang baik untuk menyelesaikan tugas ini. Jika Anda membuat beberapa tabel eksternal kosong dengan struktur yang sama seperti tabel Anda saat ini dan menyalin data ke tabel tersebut, data akan dikonversi ke format tabel eksternal (file teks). Sekali lagi, OraFAQ ke penyelamatan .

4) Jika Anda harus menjaga sistem secara paralel selama berhari-hari/berminggu-minggu/berbulan-bulan, maka gunakan alat tangkap/terapkan perubahan data untuk waktu henti yang hampir nol. Bersiaplah untuk membayar $$$. Saya telah menggunakan alat Perangkat Lunak Golden Gate yang dapat menambang Oracle redo log dan menyediakan pernyataan penyisipan/pembaruan ke Database MySQL. Anda dapat memigrasikan sebagian besar data tanpa downtime seminggu sebelum go-live. Kemudian selama periode go-live Anda, matikan database sumber, minta Golden Gate mengejar sisa transaksi terakhir, lalu buka akses ke database target baru Anda. Saya telah menggunakan ini untuk peningkatan dan periode mengejar hanya beberapa menit. Kami sudah memiliki lisensi situs untuk Golden Gate sehingga tidak ada yang keluar dari kantong kami.

Dan saya akan memainkan peran Cranky DBA di sini dan mengatakan jika Anda tidak bisa membuat Oracle berkinerja baik, saya akan senang melihat tulisan tentang bagaimana MySQL memperbaiki masalah khusus Anda. Jika Anda memiliki aplikasi di mana Anda tidak dapat menyentuh SQL, masih ada banyak kemungkinan cara untuk menyetel Oracle. /kotak sabun



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hitung desil dari frekuensi di MySQL

  2. Cara Menginstal MySQL di Debian 8

  3. Banyak Hitungan dengan Kondisi Berbeda dalam satu permintaan MySQL

  4. Bagaimana Mengonversi datetime ke UTC di MySQL

  5. Escape string Python untuk MySQL