Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)

Công Nghệ
Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)
Bài viết được sự cho phép của tác giả Trần Hữu Cương Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore) Trong bài này mình sẽ hướng dẫn sao lưu, khôi phục data của mongodb một cách đơn giản nhất. Mong đợi gì từ hội nghị lập trình viên...

Bài viết được sự cho phép của tác giả Trần Hữu Cương

Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)

Trong bài này mình sẽ hướng dẫn sao lưu, khôi phục data của mongodb một cách đơn giản nhất.

Xem thêm nhiều việc làm MongoDB lương cao trên Station D

Ví dụ mongodump, mongorestore

Mongo hỗ trợ 2 cách để sao lưu, khôi phục data là mongodump/mongorestore với mongoimport/mongoexport tuy nhiên mongoimport/mongoexport chỉ dùng cho trường hợp data nhỏ nên ở đây mình chỉ đề cập tới mongodump/mongorestore.

1. Ví dụ mongodump

Để sao lưu data thành file .gz ta dùng câu lệnh sau:

mongodump --host={host:port} --authenticationDatabase={authenticationDatabase} -u={username} -p={password} --db={database} --collection={collection} --archive={filename.gz} --gzip --query=<json>

(lệnh mongodump còn nhiều tùy chọn khác, tuy nhiên ở đây mình chỉ đưa ra các lựa chon đơn giản nhất để có thể sao lưu data).

Trong đó:  --host={host:port} --authenticationDatabase={authenticationDatabase} -u={username} -p={password} là thông tin của database mà bạn cần backup lại

  • default host:port sẽ là localhost:27017 nên nếu bạn chạy ở local thì có thể bỏ qua option --host
  • nếu bạn ko cài password cho database thì cũng có thể bỏ qua các option --authenticationDatabase,  -u-p
  • --db: chỉ rõ database bạn muốn backup, nếu ko chọn thì mặc định nó sẽ sao lưu lại tất cả database trên host
  • --collection: chỉ rõ collection bạn muốn backup, nếu bỏ qua thì nó sẽ sao lưu tất cả collection trong database
  • --archive={filename.gz} --gzip: để chọn backup ra file .gz (nếu ko có sẽ lưu lại thành folder với nhiều mục nhỏ)
  • --query=<json>: dùng để tùy chọn các bản ghi được backup, ví dụ chỉ chọn backup các bản ghi có tên là ‘xyz’…

Lưu ý: khi sử dụng --query trên window thường hay bị lỗi parse json nên người ta hay dùng --queryFile=path_file. Với path_file là đường dẫn tới file json chứa thông tin query, cách này vừa hạn chế lỗi, vừa cho phép các câu query nâng cao).

2. Ví dụ mongorestore

Để khôi phục (restore) data từ file .gz được backup bằng lệnh mongodump, ta sử dụng lệnh mongorestore với cú pháp như sau:

mongorestore --host={host:port} --authenticationDatabase={authenticationDatabase} -u={username} -p={password} --db={database} --collection={collection} --archive={filename.gz} --gzip

Nếu bạn ko chỉ rõ --db và --collection thì nó sẽ restore lại tất cả data trong file .gz, theo đúng database name và collection name đã backup

Trường hợp tên database hoặc tên collection ở nơi bạn muốn restore khác với tên lúc backup thì ta sử dụng option --nsFrom và --nsTo như sau:

mongorestore --host={host:port} --authenticationDatabase={authenticationDatabase} -u={username} -p={password} --archive={filename.gz} --gzip --nsFrom={sourceDatabase.sourceCollection} --nsTo={destinationDatabase.destinationCollection}

Demo

Ví dụ mình muốn chuyển data từ collection fruit từ database store_1 sang collection fruit của database store_2

Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)

Thực hiện backup lại data của collection fruit của của database store_1 thành file fruit.gz

mongodump --db=store_1 -c=fruit --archive=fruit.gz --gzip

Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)

Thực hiện restore data từ file fruit.gz vào collection fruit của database store_2

mongorestore --archive=fruit.gz --gzip --nsFrom=store_1.fruit --nsTo=store_2.fruit

Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)

Kết quả:

Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)Hướng dẫn sao lưu, khôi phục data mongo (mongodump, mongorestore)

Okay, Done!

References:

https://docs.mongodb.com/database-tools/mongodump

https://docs.mongodb.com/database-tools/mongorestore

Bài viết gốc được đăng tải tại stackjava.com

Có thể bạn quan tâm:

Xem thêm Việc làm IT hấp dẫn trên Station D

Bài viết liên quan

Ngành IT: Làm việc “trên mây” kiếm nhiều tiền nhất hiện nay

Ngành IT: Làm việc “trên mây” kiếm nhiều tiền nhất hiện nay

Kết quả từ cuộc khảo sát đầu năm của Station D về lương bổng của lập trình viên cho thấy nhiều thay đổi đã và đang diễn ra trong ngành IT – cuộc khảo sát tập trung vào các câu hỏi về khối lượng công việc, triển vọng cũng như...

By stationd
Đâu chỉ mỗi Bitcoin, công nghệ Blockchain còn nhiều ứng dụng hơn thế!

Đâu chỉ mỗi Bitcoin, công nghệ Blockchain còn nhiều ứng dụng hơn thế!

Khi nhắc đến blockchain , lập tức mọi người thường nghĩ ngay đến các loại tiền mã hóa, chẳng hạn như bitcoin. Tuy nhiên, blockchain lại là công nghệ tạo ra tiền mã hóa nhưng bản thân công nghệ này không phải là tiền mã hóa như cách mà chúng...

By stationd
Mock phương thức static trong Unit Test sử dụng PowerMock

Mock phương thức static trong Unit Test sử dụng PowerMock

Bài viết được sự cho phép của tác giả Nguyễn Hữu Khanh Trong bài viết này, mình sẽ hướng dẫn các bạn Mock các phương thức static trong Unit Test các bạn nhé! Nếu bạn nào chưa biết về Mock trong Unit Test thì mình có thể nói sơ qua...

By stationd
Một "thuật ngữ ma" đã tồn tại 75 năm trên internet, nó đang "ám" vào các mô hình AI, và sẽ còn tiếp tục tồn tại cho đến vĩnh cửu

Một "thuật ngữ ma" đã tồn tại 75 năm trên internet, nó đang "ám" vào các mô hình AI, và sẽ còn tiếp tục tồn tại cho đến vĩnh cửu

Một lời cảnh báo cho những người thích trích dẫn kiểu "nguồn sưu tầm", "nguồn internet" hay "nguồn AI", họ có thể sẽ đào lên được những "hóa thạch số" vô nghĩa.

By admin
Cảnh Báo Malware Giả Mạo Hợp Đồng Việc Làm: Tập Tin .EXE Nguy Hiểm Đội Lốt PDF/Word

Cảnh Báo Malware Giả Mạo Hợp Đồng Việc Làm: Tập Tin .EXE Nguy Hiểm Đội Lốt PDF/Word

Kẻ xấu đang lợi dụng nhu cầu tìm việc để phát tán phần mềm độc hại (malware) dưới dạng tệp 'hợp đồng' giả mạo. Hãy cảnh giác với những file có icon Word/PDF nhưng thực chất là .exe. Nếu mở, máy tính của bạn có thể bị đánh cắp toàn bộ thông tin cá nhân, cookie và mật khẩu.

By admin