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

Bagaimana Memulihkan Dari Rollback MongoDB?

Jika Anda menjalankan replika MongoDB yang diatur dalam lingkungan cloud publik untuk jangka waktu yang wajar, kemungkinannya adalah Anda telah mengalami 'kembalikan'. Kedengarannya menakutkan, tetapi ada langkah-langkah sederhana untuk memulihkan data Anda jika sistem Anda mengalami kemunduran.

Kapan rollback terjadi?

Rollback dalam kumpulan replika MongoDB dapat terjadi dalam urutan langkah berikut
1. Utama MongoDB menerima penulisan yang belum direplikasi ke sekunder lain dan kemudian mogok
2. Server lain menjadi yang utama dan menerima penulisan lain
3. Saat primer sebelumnya muncul kembali dan menyinkronkan ulang statusnya ke mayoritas

Dapatkah saya mencegah rollback terjadi sejak awal?

Tentu. Tapi seperti biasa itu datang dengan harga. Anda dapat mengatur masalah tulisan Anda ke 'MAJORITY'. Ini akan mengharuskan semua tulisan Anda dikomit ke sebagian besar node dalam kumpulan replika sebelum MongoDB berhasil mengakuinya. Namun, ini akan berdampak dramatis pada throughput tulis Anda. Jadi di dunia nyata, keseimbangan yang baik mungkin hanya menggunakan perhatian tulis 'MAJORITY' untuk penulisan data transaksional penting

Bagaimana memulihkan data dari rollback?

Berikut adalah empat langkah mudah untuk memulihkan data Anda jika terjadi rollback

1.  Temukan file rollback
Saat rollback terjadi, file bson dari data rollback ditempatkan di direktori 'rollback' jalur data MongoDB Anda. File terlihat seperti ini

<dbname>.<collectioname>.2016-02-08T19-34-44.0.bson

2. Muat data dari rollback ke database atau server terpisah
Preferensi saya adalah menyalin file rollback ke server baru dan menggunakan mongorestore untuk memuatnya ke server. Berikut adalah sintaks yang dapat Anda gunakan

mongorestore -u <> -p <> -h 127.0.0.1 -d <rollbackrestoretestdb> -c <rollbackrestoretestc> <path to the .bson file> --authenticationDatabase=<database of user>

3.  Menyaring data &membersihkan data yang tidak dibutuhkan
Pada titik ini, sebagai administrator database, Anda harus menggunakan kebijaksanaan Anda untuk memutuskan data mana dari rollback yang ingin Anda simpan dan data mana yang tidak lagi masuk akal. Dalam kebanyakan kasus, tidak mungkin Anda bisa mengimpor semua data. Ini mungkin langkah yang paling sulit dalam pemulihan rollback.

4. Impor data ke dalam cluster utama
Gunakan alat mongodump dan mongorestore untuk mengunduh data yang telah dibersihkan dan mengimpornya kembali ke dalam cluster produksi asli Anda.

Untuk informasi lebih lanjut tentang operasi rollback, silakan lihat dokumentasi resmi MongoDB


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongoimport file JSON

  2. MongoDB $ada

  3. MongoDB $push vs $addToSet:Apa Bedanya?

  4. Bagaimana saya bisa menggabungkan beberapa koleksi menjadi satu koleksi menggunakan $lookup mongodb atau nodejs mongodb?

  5. MongoDB - dapatkan dokumen dengan atribut maksimal per grup dalam koleksi