Bir MongoDB Atlas veritabanını yedeklemek ve ApsaraDB for MongoDB örneğine geri yüklemek için mongodump ve mongorestore araçlarını kullanın. Bu araçları yerel bir sunucuda veya bir ECS örneğinde çalıştırabilirsiniz.
Bu konuda örnek olarak yerel bir sunucu kullanılmıştır.
Kullanım notları
mongodump ve mongorestore sürümleri, MongoDB Atlas veritabanınızın sürümüyle eşleşmelidir. Kurulum adımları için resmi MongoDB Yükleme belgelerine bakın.
ApsaraDB for MongoDB tarafından desteklenen sürümler ve depolama altyapıları hakkında bilgi için Sürümler ve depolama altyapıları konusuna bakın. Farklı sürümler veya depolama altyapıları arasında veri geçişi yapmadan önce uyumluluğu doğrulayın.
Bu işlem tam veri geçişidir. Veri tutarlılığını sağlamak için geçişi başlatmadan önce kaynak veritabanındaki yazma işlemlerini durdurun.
mongodumpkomutunu çalıştırmak, dump dizinindeki mevcut yedek dosyalarının üzerine yazar. Kaynak veritabanında daha önce mongodump çalıştırdıysanız mevcut dosyaları dump dizininden taşıyın ve dump dizininin boş olduğundan emin olun.mongodump ve mongorestore komutlarını mongo kabuğundan değil, MongoDB'nin kurulu olduğu bir sunucuda çalıştırın.
Gerekli izinler
|
|
|
|
|
|
|
|
|
Ön koşullar
ApsaraDB for MongoDB konsolu üzerinde aşağıdaki adımları tamamlayın:
-
Bir ApsaraDB for MongoDB örneği oluşturun. Daha fazla bilgi için Çoğaltma kümesi örneği oluşturma veya Parçalı küme örneği oluşturma konularına bakın.
NotApsaraDB for MongoDB örneğinin depolama alanı, MongoDB Atlas örneğinkinden büyük olmalıdır.
Verileri parçalı bir küme örneğine geçirmek için öncelikle verileri parçalayın. Daha fazla bilgi için Parçalamayı etkinleştirme konusuna bakın.
-
ApsaraDB for MongoDB örneği için bir veritabanı şifresi ayarlayın. Daha fazla bilgi için Şifreyi sıfırlama konusuna bakın.
NotÖrneği oluştururken bir veritabanı şifresi ayarladıysanız bu adımı atlayın.
Yerel sunucuda aşağıdaki adımları tamamlayın:
-
MongoDB'yi yükleyin. Daha fazla bilgi için MongoDB Yükleme konusuna bakın.
NotBu sunucu, yedekleme ve geri yükleme işlemi için geçici bir ara sunucu görevi görür ve geçiş tamamlandıktan sonra artık gerekli değildir.
Yedekleme dizini bölümündeki kullanılabilir disk alanı, MongoDB Atlas veritabanının kullandığı depolama alanından büyük olmalıdır.
Yerel sunucunuzun genel IP adresini ApsaraDB for MongoDB örneğinin izin listesine ekleyin. Daha fazla bilgi için İzin listesi yapılandırma konusuna bakın.
MongoDB Atlas verilerini geçirin
MongoDB Atlas konsolunda oturum açın.
Yerel sunucunuzun genel IP adresini MongoDB Atlas örneğinin IP Erişim Listesine ekleyin. Sol gezinme bölmesinde Clusters seçeneğine tıklayın. Security sekmesinde Network Access öğesine tıklayın ve ardından sağ üst köşede + ADD IP ADDRESS düğmesine tıklayın. Add IP Access List Entry iletişim kutusunda yerel sunucunuzun genel IP adresini girin ve Confirm düğmesine tıklayın.
Clusters sayfasında kümenizin adına tıklayın.
Command Line Tools sekmesinde, MongoDB Atlas veritabanınızın bağlantı bilgilerini içeren komutu kopyalamak için mongodump komutunun yanındaki COPY düğmesine tıklayın.
-
Yerel sunucunuzda MongoDB Atlas veritabanını yedekleyin.
MongoDB Atlas veritabanınızın bağlantı bilgilerini içeren mongodump komutunu yapıştırın.
<PASSWORD>ifadesini veritabanı şifrenizle ve<DATABASE>ifadesini yedeklenecek veritabanının adıyla değiştirin.Komutu çalıştırın ve yedeklemenin tamamlanmasını bekleyin.
-
ApsaraDB for MongoDB konsolu üzerinde oturum açın ve ApsaraDB for MongoDB örneğinizin genel uç noktasını alın.
Çoğaltma kümesi örneği için birincil düğümün genel uç noktasını alın. Daha fazla bilgi için Çoğaltma kümesi örneğine bağlanma konusuna bakın.
Parçalı küme örneği için herhangi bir mongos düğümünün genel uç noktasını alın. Daha fazla bilgi için Parçalı küme örneğine bağlanma konusuna bakın.
NotBu adımdan önce manuel olarak bir genel uç nokta için başvurmanız gerekir. Daha fazla bilgi için Genel uç nokta için başvurma konusuna bakın.
-
Yerel sunucunuzda verileri ApsaraDB for MongoDB örneğine aktarmak için aşağıdaki komutu çalıştırın.
mongorestore --host <mongodb_host>:3717 --authenticationDatabase admin -u <username> -d <database> <database_backupfile_directory>Not<mongodb_host>: çoğaltma kümesi örneğinin birincil düğümünün veya parçalı küme örneğinin bir mongos düğümünün genel uç noktası.<username>: ApsaraDB for MongoDB örneğinin veritabanı hesabı. Örneğin,test.<database>: Geri yüklenecek veritabanı. Yedek birden fazla veritabanı içeriyorsa her biri için bu adımı tekrarlayın.<database_backupfile_directory>: Veritabanı yedek dosyasının bulunduğu dizin.
Örnekler:
mongodbtest veritabanını geri yükleyin:
mongorestore --host dds-bp**********-pub.mongodb.rds.aliyuncs.com:3717 --authenticationDatabase admin -u test -d mongodbtest /dump/mongodbtesttest123 veritabanını geri yükleyin:
mongorestore --host dds-bp**********-pub.mongodb.rds.aliyuncs.com:3717 --authenticationDatabase admin -u test -d test123 /dump/test123 Enter password:istemi görüntülendiğinde ApsaraDB for MongoDB örneğinizin şifresini girin ve Enter tuşuna basın.
Geri yükleme tamamlandığında MongoDB Atlas veritabanı başarıyla ApsaraDB for MongoDB örneğinize geçirilmiş olur.