MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB - Tạo bản sao lưu

Để tạo bản sao lưu trong MongoDB, hãy sao chép trực tiếp tệp hoặc sử dụng một trong số các công cụ sao lưu / quản lý.

Có một số cách để sao lưu cơ sở dữ liệu MongoDB:

  • Sao chép các tệp dữ liệu
  • Sử dụng mongodump
  • Sử dụng Trình quản lý đám mây MongoDB
  • Sử dụng Trình quản lý hoạt động

Sao chép các tệp dữ liệu

Bạn có thể sao chép các tệp dữ liệu cơ bản mà MongoDB sử dụng để lưu trữ dữ liệu. Chúng nằm trong thư mục dữ liệu.

Vị trí mặc định của thư mục dữ liệu là / data / db , tuy nhiên, nếu bạn sử dụng một vị trí khác, bạn sẽ cần sử dụng vị trí đó thay thế.

Bạn nên sao chép toàn bộ thư mục để có một bản sao lưu hoàn chỉnh.

Bạn cũng có thể sử dụng ảnh chụp nhanh nếu âm lượng hỗ trợ nó. Ví dụ:trên Linux, hãy sử dụng LVM (Logical Volume Manager) để tạo một ảnh chụp nhanh, sau đó bạn có thể sao chép từ ảnh chụp nhanh đó vào trang web sao lưu / vị trí từ xa của mình.

Sử dụng mongodump

Bạn có thể sử dụng mongodump để sao lưu dữ liệu và mongorestore để khôi phục nó.

Để nhanh chóng sao lưu tất cả nội dung của máy chủ đang chạy, hãy mở Terminal / Command Prompt mới, thay đổi thành thư mục mà bạn muốn / dump thư mục sẽ được tạo và nhập như sau:

mongodump

Bạn sẽ cần cung cấp đường dẫn đầy đủ nếu thư mục bin MongoDB không có trong PATH của bạn.

Nếu bạn thấy rằng bạn không thể chạy mongodump , hãy chắc chắn rằng bạn đã thoát khỏi mongo hoặc mở một cửa sổ Terminal / Command Prompt mới trước khi chạy mongodump , vì nó là một tiện ích riêng biệt.

Thông báo kết quả:

2016-07-12T15:44:34.467+0700	writing music.artists to 
2016-07-12T15:44:34.467+0700	writing music.musicians to 
2016-07-12T15:44:34.467+0700	writing music.catalog to 
2016-07-12T15:44:34.468+0700	done dumping music.artists (13 documents)
2016-07-12T15:44:34.469+0700	done dumping music.musicians (10 documents)
2016-07-12T15:44:34.469+0700	done dumping music.catalog (10 documents)
2016-07-12T15:44:34.470+0700	writing music.producers to 
2016-07-12T15:44:34.470+0700	writing music.jazz to 
2016-07-12T15:44:34.470+0700	done dumping music.producers (5 documents)
2016-07-12T15:44:34.470+0700	done dumping music.jazz (1 document)
2016-07-12T15:44:34.534+0700	writing test.restaurants to 
2016-07-12T15:44:34.705+0700	done dumping test.restaurants (25359 documents)

Và đây là những gì trông giống như trên Trình tìm kiếm máy Mac của tôi:

Như bạn thấy, nó đã tạo một thư mục có tên là dump , sau đó là một thư mục cho mỗi cơ sở dữ liệu, sau đó kết xuất tất cả các bộ sưu tập và siêu dữ liệu của chúng vào thư mục cơ sở dữ liệu tương ứng. Tôi đã mở rộng music thư mục cơ sở dữ liệu để hiển thị các tệp trong thư mục đó.

Lưu ý rằng mongodump ghi đè các tệp đầu ra nếu chúng tồn tại trong thư mục dữ liệu sao lưu, vì vậy hãy đảm bảo di chuyển hoặc đổi tên bất kỳ tệp nào bạn cần giữ lại trước khi chạy mongodump một lần nữa.

Sao lưu một cơ sở dữ liệu duy nhất

Bạn có thể sao lưu một cơ sở dữ liệu duy nhất bằng cách chỉ định tên của cơ sở dữ liệu trong --db tham số:

mongodump --db=music

Sao lưu một Bộ sưu tập duy nhất

Bạn có thể sao lưu một bộ sưu tập duy nhất bằng cách chỉ định tên của bộ sưu tập trong --collection tham số:

mongodump --db=music --collection=artists

Chỉ định vị trí dự phòng

Sử dụng --out để chỉ định thư mục mà bạn muốn bản sao lưu được ghi vào:

mongodump --db music --out /data/backups

Tùy chọn khác

mongodump có nhiều tùy chọn hơn để chỉ định cách dữ liệu được sao lưu. Bạn luôn có thể chạy mongodump --help để xem những tùy chọn nào có sẵn.

Khôi phục mongodump Sao lưu

Bạn có thể khôi phục bất kỳ mongodump nào sao lưu bằng cách chạy mongorestore . hoạt động theo cách tương tự như mongodump .

Xem mongorestore --help để biết thêm thông tin.

mongodumpmongorestore chủ yếu dành cho các đợt triển khai nhỏ hơn và để sao lưu và khôi phục một phần dựa trên truy vấn, đồng bộ hóa từ môi trường sản xuất sang môi trường dàn dựng hoặc phát triển hoặc thay đổi công cụ lưu trữ độc lập.

Đối với các hệ thống lớn hơn, hoặc các cụm phân đoạn, hoặc tập hợp bản sao, hãy sử dụng hệ thống sao lưu mạnh mẽ hơn, chẳng hạn như Trình quản lý đám mây MongoDB hoặc Trình quản lý Ops.

Trình quản lý đám mây MongoDB

MongoDB Cloud Manager là một nền tảng được lưu trữ để quản lý MongoDB.

Bạn có thể sử dụng Trình quản lý đám mây MongoDB để liên tục sao lưu các bộ bản sao MongoDB và các cụm phân đoạn bằng cách đọc dữ liệu oplog từ việc triển khai MongoDB của bạn.

MongoDB Cloud Manager hoạt động trên cơ sở đăng ký. Thông tin thêm tại đây.

Người quản lý hoạt động

Ops Manager giống như MongoDB Cloud Manager, ngoại trừ nó được cài đặt trên môi trường cục bộ của bạn (tức là không phải trên đám mây). Vì vậy, bạn có thể sử dụng nó để theo dõi, tự động hóa và sao lưu việc triển khai MongoDB của mình.

Ops Manager có sẵn cho Người đăng ký MongoDB.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Xây dựng một ấn phẩm phản ứng với các trường bổ sung trong mỗi tài liệu

  2. Cách giảm chỉ mục bằng Mongoose

  3. Lập mô hình cho lược đồ bạn bè trong mongoose?

  4. Truy vấn MongoDB với $ và và Nhiều $ hoặc

  5. Làm tròn đến 2 chữ số thập phân bằng cách sử dụng khung tổng hợp MongoDB