AWS Database Migration Service (DMS) adalah layanan untuk memigrasi database di AWS di mana database sumber dapat:
- Basis data di AWS (EC2,RDS)
- Database lokal
- Database pada beberapa platform cloud lain seperti Oracle Cloud Platform
Basis data target dapat berupa:
- Basis data di AWS (EC2, RDS, Redshift, DynamoDB)
- Database lokal
- Basis data di beberapa platform Cloud lain, seperti Oracle Cloud Platform
Setidaknya satu dari dua database, sumber dan target, harus ada di AWS. Sebagai contoh, DMS tidak boleh digunakan untuk memigrasikan database lokal ke platform Google Cloud. Dalam dua artikel, kita membahas migrasi Database Oracle ke database MySQL dengan Layanan Migrasi Database. Dalam artikel sebelumnya, “Migrating an Oracle Database to MySQL on AWS, Part 1,” kita membahas penyiapan database sumber dan target. Pada artikel lanjutan ini, kita akan melakukan migrasi. Artikel ini memiliki bagian berikut:
- Membuat Migrasi
- Menjalankan Migrasi
- Meminta Skema Basis Data yang Dimigrasikan
- Memulai Migrasi
- Memodifikasi Migrasi
- Kesimpulan
Membuat Migrasi
Di bagian ini, kita akan membuat migrasi DMS untuk memigrasi instans Oracle DB di RDS ke instans DB MySQL di RDS. Masuk sebagai pengguna IAM (dvohra atau lainnya) yang dibuat sebelumnya. Pilih DMS layanan di konsol AWS, seperti yang ditunjukkan pada Gambar 1.
Gambar 1: Layanan DMS di AWS Console
Klik Buat migrasi , seperti yang ditunjukkan pada Gambar 2.
Gambar 2: Buat Migrasi
Wizard Layanan Migrasi Database AWS akan dimulai, seperti yang ditunjukkan pada Gambar 3. Klik Berikutnya di halaman Selamat Datang.
Gambar 3: Wizard Layanan Migrasi Database AWS
Selanjutnya, Buat instance replikasi halaman ditampilkan, seperti yang ditunjukkan pada Gambar 4.
Gambar 4: Buat instance replikasi
Tentukan nama instance replikasi, atau pertahankan pengaturan default, seperti yang ditunjukkan pada Gambar 5. Pilih kelas Instance, atau pertahankan pengaturan default. Pilih VPC karena tidak ada VPC default yang dikonfigurasi. Pilih Multi-AZ sebagai Tidak untuk menggunakan satu Availability Zone. Pilih Dapat diakses oleh publik pilihan.
Gambar 5: Mengonfigurasi Instance Replikasi
Dalam Lanjutan setting default untuk Allocated Storage, Replicated Subnet Group, dan Availability zone ditunjukkan pada Gambar 6.
Gambar 6: Setelan Lanjutan
Pilih kunci master KMS sebagai kunci enkripsi (dms ) yang dibuat sebelumnya, seperti yang ditunjukkan pada Gambar 7. Klik Next.
Gambar 7: Memilih kunci master KMS
Selanjutnya, konfigurasikan titik akhir Database untuk terhubung ke titik akhir database sumber dan target, seperti yang ditunjukkan pada Gambar 8. Titik akhir database dapat ditentukan saat instance replikasi sedang dibuat. Titik akhir sumber dan target dikonfigurasikan dalam kolom terpisah berlabel Detail koneksi database sumber dan detail koneksi database target.
Gambar 8: Titik Akhir Basis Data
Pilih Mesin sumber dari daftar tarik-turun sebagai Oracle , seperti yang ditunjukkan pada Gambar 9.
Gambar 9: Mesin Sumber
Pilih Mesin target dari daftar tarik-turun sebagai mysql , seperti yang ditunjukkan pada Gambar 10.
Gambar 10: Memilih Mesin Target
Untuk Nama server s, tentukan Endpoint untuk instans DB, seperti yang tercantum di Konsol RDS dengan menghapus akhiran :port. Nama Server untuk Oracle DB adalah orcl.crbmlbxmp8qi.us-east-1.rds.amazonaws.com dan nama Server untuk DB MySQL adalah mysqldb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com . Port ditentukan secara terpisah di Port bidang dan 1521 untuk database Oracle dan 3306 untuk database MySQL. Pilih mode SSL sebagai tidak ada untuk database Sumber dan Target. Tentukan Nama Pengguna dan Kata Sandi sebagai Nama Pengguna Utama dan Kata Sandi Utama yang dikonfigurasi saat membuat instans RDS. Detail koneksi Sumber dan Target ditunjukkan pada Gambar 11.
Gambar 11 Detail Koneksi Sumber dan Target
Gulir ke bawah untuk koneksi Pengaturan lanjutan. Untuk Oracle Database, tentukan SID, seperti yang ditunjukkan pada Gambar 12. Untuk database MySQL, atur Extra connection atribut ke targetDbType=SPECIFIC_DATABASE . Kunci master KMS harus berupa kunci enkripsi (dms) yang dibuat sebagai pengguna IAM (dvohra) untuk DMS.
Gambar 12: Pengaturan Lanjutan Koneksi
Klik Jalankan pengujian untuk setiap database untuk menguji koneksi. Hasilnya harus berhasil diuji Koneksi, seperti yang ditunjukkan pada Gambar 13.
Gambar 13: Jalankan tes
Selanjutnya, tugas migrasi perlu dikonfigurasi, sebelum instance replikasi harus dibuat, seperti yang ditunjukkan pada Gambar 14.
Gambar 14: Instance Replikasi Dibuat
Setelah mengonfigurasi titik akhir basis data, klik Berikutnya, seperti yang ditunjukkan pada Gambar 15.
Gambar 15: Titik Akhir Basis Data Dikonfigurasi
Di Tugas, setidaknya satu aturan pemilihan harus dikonfigurasi atau tugas tidak dibuat, seperti yang ditunjukkan oleh pesan kesalahan saat Buat tugas diklik (lihat Gambar 16).
Gambar 16: Setidaknya satu aturan pemilihan diperlukan
Klik tambahkan aturan pemilihan tautan yang ditunjukkan pada Gambar 16. Dalam detail aturan pemilihan, konfigurasikan Di mana aturan seleksi. Pilih Skema sebagai DVOHRA (skema akan berbeda untuk pengguna yang berbeda) dan tentukan Nama tabel seperti sebagai % . Dalam Beraksi , objek dapat disertakan atau dikecualikan dengan memilih Sertakan atau Kecualikan . Pengecualian diproses setelah inklusi. Pilih Tindakan sebagai Sertakan. Filter sumber untuk membatasi jumlah dan jenis catatan yang ditransfer dari sumber ke target dapat ditambahkan. Klik Tambahkan aturan pemilihan , seperti yang ditunjukkan pada Gambar 17. Selanjutnya, klik Buat tugas .
Gambar 17: Menambahkan Aturan Pemilihan
Tugas baru ditambahkan, seperti yang ditunjukkan pada Gambar 18. Awalnya, status tugas adalah “Membuat.”
Gambar 18: Tugas baru
Saat tugas dibuat, Statusnya menjadi Siap , seperti yang ditunjukkan pada Gambar 19.
Gambar 19: Status Tugas sebagai Siap
Menjalankan Migrasi
Untuk menjalankan migrasi, klik Mulai/Lanjutkan , seperti yang ditunjukkan pada Gambar 20.
Gambar 20: Mulai/Lanjutkan
Statusnya harus menjadi Mulai (lihat Gambar 21).
Gambar 21: Tugas Dimulai
Setelah Mulai, statusnya menjadi Berjalan . Saat migrasi selesai, Status menjadi Pemuatan selesai , seperti yang ditunjukkan pada Gambar 22.
Gambar 22: Muat Selesai
Statistik tabel tab harus mencantumkan tabel yang dimigrasikan, seperti yang ditunjukkan pada Gambar 23.
Gambar 23: Statistik Tabel
Meminta Skema Basis Data yang Dimigrasikan
Di MySQL CLI, buat daftar database dengan perintah show databases, seperti yang ditunjukkan pada Gambar 24. DVOHRA database (skema) terdaftar.
Gambar 24: Mencantumkan Basis Data
Pilih DVOHRA database dengan gunakan DVOHRA memerintah. Daftar tabel dengan perintah show tables, seperti yang ditunjukkan pada Gambar 25. WEBLOGICLOG dan WLSLOG tabel yang dibuat di database Oracle sebelumnya telah dimigrasikan dan didaftarkan.
Gambar 25: Daftar Tabel
Tabel juga akan dimigrasikan. WEBLOGICLOG tabel tidak memiliki data apa pun dan tidak ada yang dikembalikan dalam kueri SQL (lihat Gambar 26).
Gambar 26: SQL Query di WEBLOGLOG tidak mencantumkan data apa pun
WLSLOGtable yang dimigrasikan mencakup data, seperti yang ditunjukkan oleh hasil kueri pada Gambar 27.
Gambar 27: Data di Tabel WLSLOG dimigrasikan
Memulai Migrasi
Secara default, migrasi tidak secara aktif melakukan polling di database sumber untuk memigrasikan perubahan, jika ada. Jika ada modifikasi yang dibuat ke database sumber, seperti data ditambahkan ke tabel atau tabel baru dibuat, migrasi harus dijalankan lagi. Sebagai contoh, tambahkan data ke weblogiclog tabel di database Oracle.
INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:16-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to STANDBY'); INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:17-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to STARTING'); INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:18-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to ADMIN'); INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:19-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to RESUMING'); INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:20-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000361','Started WebLogic AdminServer'); INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:21-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to RUNNING'); INSERT INTO weblogiclog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:22-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000360','Server started in RUNNING mode');
Untuk memigrasikan data yang ditambahkan ke MySQL, klik Mulai/Lanjutkan , seperti yang ditunjukkan pada Gambar 28.
Gambar 28: Memulai Ulang Migrasi
Di Mulai tugas dialog, dua opsi disediakan:Mulai dan Mulai ulang , seperti yang ditunjukkan pada Gambar 29. Mulai opsi hanya memuat tabel baru (beban penuh) dan tabel yang tidak lengkap (beban sebagian) dalam menjalankan tugas sebelumnya.
Gambar 29: Mulai Tugas
Karena WEBLOGICLOG tabel telah dimigrasikan (beban penuh selesai) dan data baru perlu dimigrasikan, Mulai Ulang pilihan perlu dipilih, seperti yang ditunjukkan pada Gambar 30.
Gambar 30: Memulai Ulang Migrasi
Status tugas kembali menjadi Mulai diikuti dengan Berlari (lihat Gambar 31).
Gambar 31: Status Tugas Berjalan
Saat tugas selesai berjalan, Statusnya menjadi Pemuatan selesai , seperti yang ditunjukkan pada Gambar 32.
Gambar 32: Muat selesai
Kueri WEBLOGICLOG data di MySQL CLI dan data yang dimigrasikan akan terdaftar, seperti yang ditunjukkan pada Gambar 33.
Gambar 33: Data dimigrasikan saat memulai ulang tugas
Memodifikasi Migrasi
Tugas migrasi mungkin perlu dimodifikasi, seperti menambah/menghapus aturan pemilihan atau mengubah salah satu pengaturan tugas lainnya. Tugas dapat dimodifikasi saat tidak berjalan dan statusnya Muat selesai. Klik Ubah untuk memodifikasi tugas, seperti yang ditunjukkan pada Gambar 34.
Gambar 34: Ubah
Ubah Tugas dialog dimulai. Meskipun berbeda Jenis migrasi s terdaftar, seperti yang ditunjukkan pada Gambar 35, jenis migrasi tidak dapat dimodifikasi saat ini. Setelan defaultnya adalah “Migrasikan data yang ada”.
Gambar 35: Ubah Tugas
Setelan Tugas ditunjukkan pada Gambar 36 dapat dimodifikasi. Klik Setelan Lanjutan untuk mengubah setelan lanjutan.
Gambar 36: Pengaturan Tugas
Di Setelan Lanjutan, Tabel kontrol pengaturan dapat dimodifikasi, seperti yang ditunjukkan pada Gambar 37.
Gambar 37: Pengaturan Tabel Kontrol
Setelan Penyetelan dapat dimodifikasi, seperti yang ditunjukkan pada Gambar 38.
Gambar 38: Pengaturan Penyetelan
Untuk menambahkan aturan transformasi, klik tambahkan aturan transformasi , seperti yang ditunjukkan pada Gambar 39.
Gambar 39: Tambahkan Aturan Transformasi
Dalam Aturan transformasi , pilih Target untuk transformasi sebagai Tabel , seperti yang ditunjukkan pada Gambar 40. Pilih Nama skema adalah sebagai DVOHRA. Tentukan Nama tabel seperti sebagai % . Pilih Tindakan sebagai Tambahkan awalan , sebagai contoh.
Gambar 40: Menambahkan Aturan Transformasi
Tentukan awalan tabel untuk ditambahkan ke setiap tabel yang dimigrasikan (lihat Gambar 41). Klik Tambahkan aturan transformasi .
Gambar 41: Tambahkan aturan transformasi
Klik Ubah , seperti yang ditunjukkan pada Gambar 42.
Gambar 42: Ubah
Di Mulai tugas , pilih Mulai ulang dan klik Mulai tugas , seperti yang ditunjukkan pada Gambar 43.
Gambar 43: Mulai tugas
Status tugas menjadi Memodifikasi , seperti yang ditunjukkan pada Gambar 44.
Gambar 44: Memodifikasi
Status tugas dapat disegarkan dengan tombol segarkan. Statusnya menjadi Berjalan , seperti yang ditunjukkan pada Gambar 45.
Gambar 45: Menjalankan Tugas
Saat tugas selesai berjalan, statusnya menjadi Pemuatan selesai (lihat Gambar 46).
Gambar 46: Muat Selesai
Selanjutnya, daftar tabel di MySQL. Tabel baru dengan awalan terdaftar, seperti yang ditunjukkan pada Gambar 47.
Gambar 47: Tabel dengan awalan
Kesimpulan
Dalam dua artikel, kami membahas migrasi Database Oracle di RDS ke database MySQL di RDS menggunakan layanan AWS Database Migration.