Tüm Ürünler
Search
Belge Merkezi

ApsaraDB for MongoDB:Migrate data from a self-managed MongoDB database to a sharded cluster instance by using mongodump and mongorestore

Son Güncelleme:Oct 03, 2026

Kendi sunucunuzda barındırdığınız bir MongoDB veritabanından ApsaraDB for MongoDB parçalı küme örneğine tam çevrimdışı geçiş yapmak için mongodump ve mongorestore araçlarını kullanın. Bu yaklaşım, geçiş sırasında yazma işlemlerinin durdurulmasını gerektirir ve kısa süreli kesintilerin kabul edilebilir olduğu ortamlar için uygundur.

Sürekli yazma erişimi ve sıfır kesinti süresi gerektiren geçişler için bunun yerine Data Transmission Service (DTS) hizmetini kullanın. Bkz. DTS kullanarak parçalı küme mimarisine sahip kendi sunucunuzdaki MongoDB veritabanından ApsaraDB for MongoDB'ye veri geçişi .

Ön koşullar

Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:

  • Kendi sunucunuzdaki MongoDB veritabanlarınızla aynı sürümde mongodump ve mongorestore araçlarının yüklenmiş olması. Kurulum talimatları için bkz. MongoDB Yükleme.

  • Hedef parçalı küme örneğinin depolama kapasitesinin, kendi sunucunuzdaki veritabanlarının veri boyutundan daha büyük olması. Kapasite yetersizse devam etmeden önce örneği yükseltin.

mongodump ve mongorestore araçlarını, kendi sunucunuzdaki veritabanlarıyla aynı sunucuda veya ayrı bir sunucuda çalıştırabilirsiniz.

Geçiş kısıtlamaları

  • Bu, tam bir veri geçişidir. Veri tutarlılığını sağlamak için geçişten önce kendi sunucunuzdaki veritabanlarına yönelik tüm yazma işlemlerini durdurun.

  • dump klasöründe önceki bir çalıştırmadan kalan dosyalar varsa, bunları öncelikle başka bir dizine taşıyın. mongodump, dump klasöründeki mevcut dosyaların üzerine yazar.

  • mongodump ve mongorestore işlemlerini mongo kabuğundan değil, bir sunucu kabuğundan çalıştırın.

Adım 1: Kendi sunucunuzdaki MongoDB veritabanlarını yedekleyin

Kendi sunucunuzdaki veritabanların bulunduğu sunucuda aşağıdaki komutu çalıştırın:

mongodump --host <mongodb_host> --port <port> -u <username> --authenticationDatabase <database>
Parametre Açıklama Varsayılan
<mongodb_host> Kendi sunucunuzdaki veritabanların bulunduğu sunucunun adresi 127.0.0.1
<port> Kendi sunucunuzdaki veritabanların hizmet bağlantı noktası 27017
<username> Veritabanına bağlanmak için kullanılan hesap —
<database> Hesabın kimlik doğrulama veritabanı —

Örnek:

mongodump --host 127.0.0.1 --port 27017 -u test --authenticationDatabase admin

Enter password: istemi görüntülendiğinde veritabanı şifresini girin ve Enter tuşuna basın. Yedekleme işlemi başlar ve veriler geçerli dizininizdeki dump klasörüne kaydedilir.

Adım 2: (İsteğe bağlı) Parçalamayı yapılandırın

Parçalama yapılandırılmadığında tüm veriler yalnızca birincil parçaya yazılır ve diğer parçalar kullanılmaz. Verileri parçalar arasında dağıtmak için parçalamayı geçişten önce veya sonra yapılandırın.

Verileri geçirmeden önce hedef parçalı küme örneğinde gerekli veritabanlarını ve koleksiyonları oluşturun. Parçalamayı geçişten önce veya sonra yapılandırabilirsiniz.

Yapılandırma adımları için bkz. Parça performansını en üst düzeye çıkarmak için parçalamayı yapılandırma.

Adım 3: Verileri hedef parçalı küme örneğine geri yükleyin

3,1 mongos bağlantı dizesini alın

Hedef parçalı küme örneğinizdeki bir mongos düğümünün genel veya dahili bağlantı dizesini alın. Bkz. Parçalı küme örneği bağlantılarına genel bakış.

Genel uç noktalar varsayılan olarak etkin değildir. Genel bir bağlantı kullanmak için önce genel uç nokta başvurusu yapın .

3,2 Sunucunuzun IP adresini izin listesine ekleyin

mongorestore aracını çalıştıran sunucunun IP adresini, hedef parçalı küme örneğinizin izin listesine ekleyin. Bkz. Örnek için izin listesi yapılandırma.

  • Dahili ağ: Kendi sunucunuzdaki veritabanların bulunduğu ECS örneğinin özel IP adresini ekleyin.

  • İnternet: Kendi sunucunuzdaki veritabanların bulunduğu sunucunun genel IP adresini ekleyin.

3,3 Yedeği hedef örneğe geri yükleyin

Tüm yedekleme dosyalarını hedef parçalı küme örneğine geri yüklemek için aşağıdaki komutu çalıştırın:

mongorestore --host <Mongos_host> -u <username> --authenticationDatabase <database> <backup_directory>
Parametre Açıklama Varsayılan
<Mongos_host> ApsaraDB for MongoDB örneğindeki herhangi bir mongos düğümünün bağlantı dizesi —
<username> Hedef örneğe bağlanmak için kullanılan hesap (ilk hesap root olur) —
<database> Hesabın kimlik doğrulama veritabanı (root hesabı için admin kullanın) —
<backup_directory> Yedekleme dosyalarını içeren dizin dump

Örnek (hesap: test, kimlik doğrulama veritabanı: admin):

mongorestore --host s-bp19f409d7512****-pub.mongodb.rds.aliyuncs.com:3717 -u test --authenticationDatabase admin dump

Enter password: istemi görüntülendiğinde şifreyi girin. Yazdığınız karakterler maskelenir.

Sonraki adımlar

Geri yükleme tamamlandıktan sonra uygulama trafiğinizi hedef parçalı küme örneğine yönlendirin. Kullanıcılarınız üzerindeki etkiyi en aza indirmek için geçişi yoğun olmayan saatlerde planlayın.

Mevcut geçiş ve senkronizasyon seçeneklerine genel bir bakış için bkz. Veri geçişi ve senkronizasyonu.