MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Salin/Klon Database di MongoDB

Di MongoDB versi sebelumnya, Anda dapat menggunakan copyDB perintah atau metode pembantunya, db.copyDatabase() untuk menyalin database.

MongoDB telah menghentikan ini. Juga, mulai dari versi 4.2, MongoDB telah menghapus copydb perintah, dan karena itu juga db.copyDatabase() metode, yang berarti Anda tidak dapat menggunakannya meskipun Anda menginginkannya jika Anda menggunakan MongoDB 4.2 atau lebih baru.

Untungnya, ada cara lain untuk menyalin database MongoDB.

Periksa Alat Basis Data MongoDB

Di MongoDB, Anda dapat mengkloning database menggunakan MongoDB Database Tools. Secara khusus, Anda dapat menggunakan mongodump dan mongorestore .

Alat Database MongoDB adalah rangkaian utilitas baris perintah untuk bekerja dengan MongoDB.

Jika Anda tidak yakin apakah Anda telah menginstal MongoDB Database Tools, coba jalankan perintah berikut di Terminal atau Command Prompt untuk memeriksa:

mongodump --version
mongorestore --version

Itu secara khusus memeriksa mongodump dan mongorestore versi.

Jika Anda tidak memilikinya, Anda dapat menggunakan petunjuk penginstalan di situs web MongoDB untuk menginstal Alat Database MongoDB ke sistem Anda.

Contoh Mengkloning Basis Data

Anda perlu menjalankan mongodump dan mongorestore dari baris perintah sistem Anda (mis. Terminal baru atau jendela Prompt Perintah). Jangan jalankan dari mongo kerang.

Berikut ini contoh kode yang mengkloning database:

mongodump --archive --db=PetHotel | mongorestore --archive  --nsFrom='PetHotel.*' --nsTo='PetHouse.*'

Dalam hal ini, kami membuat cadangan PetHotel database, lalu restore semua koleksinya ke database bernama PetHouse . Dengan kata lain, kami mengkloning PetHotel database sebagai PetHouse .

Ini menggunakan mongodump untuk membuat file backup database, maka mongorestore untuk memulihkan database tersebut dengan nama yang berbeda. Kami melakukan ini dengan membuang database ke aliran keluaran standar dan menyalurkan ke mongorestore .

Inilah yang dilakukan setiap parameter:

Parameter Deskripsi
--archive Menulis output ke file arsip tertentu atau, jika file arsip tidak ditentukan, menulis ke output standar (stdout ). Dalam kasus kami, file arsip tidak ditentukan, sehingga menulis ke output standar.
--db Menentukan database untuk dicadangkan. Dalam hal ini, kami membuat cadangan PetHotel basis data.
--nsFrom Menentukan koleksi dalam file dump. Karakter pengganti asterisk (* ) menentukan semua koleksi.
--nsTo Menentukan nama koleksi yang harus digunakan dalam database yang dipulihkan.

Anda juga dapat menggunakan mongodump untuk membuang semua database. Untuk melakukannya jalankan mongodump tanpa argumen apapun. Namun, ketika Anda melakukannya, itu tidak termasuk local dan config database di tempat pembuangannya.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nilai unik luwak dalam array objek bersarang

  2. Ikhtisar Transaksi ACID Multi-Dokumen di MongoDB dan Cara Menggunakannya

  3. Mode Impor mongoimport

  4. Mengekspor modul database luwak

  5. MongoDB hapusSatu()