Topik ini menjelaskan cara memigrasi database MongoDB yang dikelola sendiri ke ApsaraDB for MongoDB menggunakan mongodump dan mongorestore yang terintegrasi dalam MongoDB untuk pencadangan dan pemulihan data. Anda dapat menginstal database MongoDB pada perangkat lokal atau Instance ECS (Elastic Compute Service) dan menggunakan mongodump serta mongorestore untuk memigrasi database tersebut ke instance ApsaraDB for MongoDB.
Untuk menghindari gangguan layanan, kami sarankan Anda menggunakan Data Transmission Service (DTS) untuk memigrasi database MongoDB yang dikelola sendiri dengan arsitektur mandiri ke ApsaraDB for MongoDB. Untuk informasi lebih lanjut, lihat Migrasi data dari instance ApsaraDB for MongoDB mandiri ke instance lainnya.
Untuk detail lebih lanjut tentang solusi migrasi dan sinkronisasi data, lihat Migrasi dan sinkronisasi data.
Prasyarat
mongodump dan mongorestore harus diinstal pada server yang berbeda dari database MongoDB yang dikelola sendiri, tetapi dengan versi yang sama. Untuk panduan instalasi, kunjungi Instal MongoDB di situs resmi MongoDB.
CatatanAnda juga dapat menjalankan perintah mongodump dan mongorestore langsung di server tempat database MongoDB yang dikelola sendiri berada.
Versi database MongoDB yang dikelola sendiri harus 3.0 atau lebih baru untuk memastikan kompatibilitas.
CatatanJika database sumber dan instance tujuan ApsaraDB for MongoDB menggunakan versi database atau mesin penyimpanan yang berbeda, pastikan tidak ada masalah kompatibilitas sebelum memulai migrasi. Untuk informasi lebih lanjut tentang versi dan mesin penyimpanan yang didukung oleh ApsaraDB for MongoDB, lihat Versi MongoDB dan mesin penyimpanan.
Ruang penyimpanan instance ApsaraDB for MongoDB mandiri harus lebih besar daripada yang digunakan oleh database MongoDB yang dikelola sendiri. Jika ruang penyimpanan tidak mencukupi, Anda dapat memperluasnya. Untuk informasi lebih lanjut, lihat Ubah konfigurasi instance.
Catatan penggunaan
Ini adalah migrasi data penuh. Untuk memastikan konsistensi data, kami sarankan Anda menghentikan penulisan data ke database MongoDB yang dikelola sendiri sebelum memulai migrasi.
Jika Anda telah menjalankan perintah mongodump untuk mencadangkan database MongoDB yang dikelola sendiri, pindahkan file cadangan dari folder dump ke direktori lain dan pastikan bahwa folder dump kosong. File cadangan historis akan ditimpa jika folder tidak kosong saat pencadangan berikutnya dilakukan.
Jalankan perintah mongodump dan mongorestore di server tempat database MongoDB yang dikelola sendiri berada. Jangan jalankan perintah tersebut di shell mongo.
Langkah 1: Cadangkan database MongoDB yang dikelola sendiri
Di server tempat database MongoDB yang dikelola sendiri berada, jalankan perintah berikut untuk mencadangkan semua database:
mongodump --host <mongodb_host> --port <port> -u <username> --authenticationDatabase <database>Catatan<mongodb_host>: alamat server tempat database MongoDB yang dikelola sendiri berada. Dalam hal ini, masukkan 127.0.0.1.
<port>: port layanan database MongoDB yang dikelola sendiri. Nilai defaultnya adalah 27017.
<username>: akun yang digunakan untuk masuk ke database MongoDB yang dikelola sendiri. Dalam contoh ini, akun uji digunakan.
<database>: nama database yang sesuai dengan nama pengguna yang autentikasi diaktifkan.
Contoh:
mongodump --host 127.0.0.1 --port 27017 -u test --authenticationDatabase adminMasukkan kata sandi akun database ketika
Masukkan kata sandiditampilkan dan tekan tombol Enter. Operasi pencadangan data dimulai.CatatanKarakter kata sandi disembunyikan saat Anda memasukkan kata sandi.
Tunggu hingga pencadangan data selesai. Data database MongoDB yang dikelola sendiri dicadangkan ke folder dump dari direktori tempat Anda menjalankan perintah ini.
Langkah 2: Migrasi data ke instance tujuan
Dapatkan alamat koneksi node utama instance ApsaraDB for MongoDB.
Masuk ke Konsol ApsaraDB for MongoDB.
Di pojok kiri atas halaman, pilih wilayah tempat instance diterapkan.
Di panel navigasi sisi kiri, klik Replica Set Instances.
Temukan instance yang diinginkan dan klik ID instance.
Di panel navigasi sisi kiri, klik Database Connections untuk melihat detail koneksi database.

Tabel 1. Alamat koneksi
Jenis Titik Akhir
Deskripsi
Skenario
Titik Akhir VPC
VPC (virtual private cloud) adalah jaringan terisolasi yang menyediakan keamanan dan performa lebih tinggi dibandingkan jaringan klasik.
Database MongoDB yang dikelola sendiri diterapkan pada Instance ECS.
CatatanInstance ECS dan instance ApsaraDB for MongoDB harus berada di wilayah dan VPC yang sama.
Titik Akhir Publik
Secara default, instance ApsaraDB for MongoDB tidak menyediakan alamat koneksi publik. Anda harus mengajukan permohonan untuk titik akhir publik jika diperlukan. Untuk informasi lebih lanjut, lihat Ajukan permohonan untuk titik akhir publik untuk instance ApsaraDB for MongoDB mandiri.
Database MongoDB yang dikelola sendiri diterapkan pada perangkat lokal.
Tambahkan alamat IP server tempat database yang dikelola sendiri berada ke daftar putih instance ApsaraDB for MongoDB. Untuk informasi lebih lanjut, lihat Konfigurasikan daftar putih untuk instance.
CatatanSaat Anda terhubung ke instance ApsaraDB for MongoDB melalui VPC, tambahkan alamat IP internal instance ECS tempat database yang dikelola sendiri diterapkan ke daftar putih instance ApsaraDB for MongoDB.
Saat Anda terhubung ke instance ApsaraDB for MongoDB melalui Internet, tambahkan alamat IP publik server lokal tempat database yang dikelola sendiri berada ke daftar putih instance ApsaraDB for MongoDB.
Jalankan perintah berikut di server tempat database yang dikelola sendiri berada untuk memigrasi data penuh ke instance ApsaraDB for MongoDB:
mongorestore --host <Primary_host> -u <username> --authenticationDatabase <database> <Direktori Cadangan>Catatan<Primary_host>: alamat koneksi node utama di instance ApsaraDB for MongoDB.
<username>: akun database instance ApsaraDB for MongoDB. Akun awal adalah root.
<database>: nama database yang sesuai dengan nama pengguna yang autentikasi diaktifkan. Jika nama pengguna adalah root, masukkan admin.
<Direktori Cadangan>: direktori tempat file cadangan disimpan. Nilai defaultnya adalah dump.
Dalam contoh perintah berikut, nama pengguna adalah test dan database adalah admin.
mongorestore --host dds-bp19f409d7512****-pub.mongodb.rds.aliyuncs.com:3717 -u test --authenticationDatabase admin dumpMasukkan kata sandi akun instance ApsaraDB for MongoDB ketika
Masukkan kata sandiditampilkan dan tekan tombol Enter. Operasi migrasi data dimulai.CatatanKarakter kata sandi disembunyikan saat Anda memasukkan kata sandi.
Jika Anda lupa kata sandi akun root, Anda dapat menyetel ulang. Untuk informasi lebih lanjut, lihat (Opsional) Setel ulang kata sandi.
Tunggu hingga migrasi data selesai. Alihkan bisnis Anda ke instance ApsaraDB for MongoDB selama jam-jam sepi.
Apa yang harus dilakukan selanjutnya
Setelah database dimigrasi ke instance ApsaraDB for MongoDB, Anda dapat terhubung ke database dan mengelola database serta akun database.