Gunakan mongodump dan mongorestore untuk mencadangkan database MongoDB Atlas dan memulihkannya ke ApsaraDB for MongoDB. Anda dapat menjalankan alat ini di server on-premises atau Instance ECS.
Topik ini menggunakan server on-premises sebagai contoh.
Catatan penggunaan
Versi mongodump dan mongorestore harus sesuai dengan versi database MongoDB Atlas Anda. Untuk langkah instalasi, lihat dokumentasi resmi Install MongoDB.
Untuk informasi tentang versi dan mesin penyimpanan yang didukung oleh ApsaraDB for MongoDB, lihat Versi dan mesin penyimpanan. Verifikasi kompatibilitas sebelum melakukan migrasi data antar versi atau mesin penyimpanan yang berbeda.
Ini adalah migrasi data penuh. Untuk memastikan konsistensi data, hentikan operasi write ke database sumber sebelum memulai migrasi.
Menjalankan perintah mongodump akan menimpa file backup yang ada di direktori dump. Jika Anda sebelumnya telah menjalankan
mongodumppada database sumber, pindahkan file yang ada keluar dari direktori dump dan pastikan bahwa direktori dump tersebut kosong.Jalankan mongodump dan mongorestore di server tempat MongoDB diinstal, bukan dari dalam mongo shell.
Izin yang diperlukan
|
Database |
Izin yang diperlukan |
|
Instans MongoDB Atlas sumber |
izin read pada database sumber |
|
Instans ApsaraDB for MongoDB tujuan |
izin readWrite pada database tujuan |
Prasyarat
Pada Konsol ApsaraDB for MongoDB, lakukan langkah-langkah berikut:
-
Buat instans ApsaraDB for MongoDB. Untuk informasi lebih lanjut, lihat Buat instans set replika atau Buat instans kluster sharded.
CatatanStorage space instans ApsaraDB for MongoDB harus lebih besar daripada instans MongoDB Atlas.
Untuk melakukan migrasi data ke instans kluster sharded, lakukan sharding terlebih dahulu. Untuk informasi lebih lanjut, lihat Aktifkan sharding.
-
Tetapkan password database untuk instans ApsaraDB for MongoDB. Untuk informasi lebih lanjut, lihat Reset password.
CatatanLewati langkah ini jika Anda telah menetapkan password database saat membuat instans.
Pada server on-premises, lakukan langkah-langkah berikut:
-
Instal MongoDB. Untuk informasi lebih lanjut, lihat Install MongoDB.
CatatanServer ini berfungsi sebagai perantara sementara selama proses backup dan restore, dan tidak lagi diperlukan setelah migrasi selesai.
Disk space yang tersedia pada partisi direktori backup harus lebih besar daripada storage space yang digunakan oleh database MongoDB Atlas.
Tambahkan Alamat IP publik server on-premises Anda ke daftar putih instans ApsaraDB for MongoDB. Untuk informasi lebih lanjut, lihat Konfigurasi daftar putih.
Migrasi data MongoDB Atlas
Login ke Konsol MongoDB Atlas.
Tambahkan Alamat IP publik server on-premises Anda ke IP Access List instans MongoDB Atlas. Di panel navigasi kiri, klik Clusters. Pada tab Security, klik Network Access, lalu klik + ADD IP ADDRESS di pojok kanan atas. Di kotak dialog Add IP Access List Entry, masukkan Alamat IP publik server on-premises Anda dan klik Confirm.
Pada halaman Clusters, klik nama kluster Anda.
Pada tab Command Line Tools, klik COPY di samping perintah mongodump untuk menyalin perintah yang berisi informasi koneksi ke database MongoDB Atlas Anda.
-
Di server on-premises Anda, cadangkan database MongoDB Atlas.
Tempel perintah mongodump yang berisi informasi koneksi ke database MongoDB Atlas Anda.
Ganti
<PASSWORD>dengan password database Anda dan<DATABASE>dengan nama database yang akan dicadangkan.Jalankan perintah tersebut dan tunggu hingga proses pencadangan selesai.
-
Login ke Konsol ApsaraDB for MongoDB dan dapatkan Titik akhir publik instans ApsaraDB for MongoDB Anda.
Untuk instans set replika, dapatkan Titik akhir publik dari node primary. Untuk informasi lebih lanjut, lihat Hubungkan ke instans set replika.
Untuk instans kluster sharded, dapatkan Titik akhir publik dari salah satu node mongos. Untuk informasi lebih lanjut, lihat Hubungkan ke instans kluster sharded.
CatatanAnda harus mengajukan Titik akhir publik secara manual sebelum langkah ini. Untuk informasi lebih lanjut, lihat Ajukan Titik akhir publik.
-
Di server on-premises Anda, jalankan perintah berikut untuk mengimpor data ke instans ApsaraDB for MongoDB.
mongorestore --host <mongodb_host>:3717 --authenticationDatabase admin -u <username> -d <database> <database_backupfile_directory>Catatan<mongodb_host>: Titik akhir publik dari node primary instans set replika atau node mongos instans kluster sharded.<username>: akun database instans ApsaraDB for MongoDB. Contohnya,test.<database>: database yang akan dipulihkan. Jika backup berisi beberapa database, ulangi langkah ini untuk masing-masing database.<database_backupfile_directory>: direktori tempat file backup database berada.
Contoh:
Pulihkan database mongodbtest:
mongorestore --host dds-bp**********-pub.mongodb.rds.aliyuncs.com:3717 --authenticationDatabase admin -u test -d mongodbtest /dump/mongodbtestPulihkan database test123:
mongorestore --host dds-bp**********-pub.mongodb.rds.aliyuncs.com:3717 --authenticationDatabase admin -u test -d test123 /dump/test123 Saat diminta
Enter password:, masukkan password instans ApsaraDB for MongoDB Anda dan tekan Enter.
Setelah pemulihan selesai, database MongoDB Atlas telah berhasil dimigrasikan ke instans ApsaraDB for MongoDB Anda.