Tập lệnh tiện ích nào của phương thức MongoDB được sử dụng để sao lưu?
Sao lưu cơ sở dữ liệu không gì khác ngoài một cách để bảo vệ hoặc khôi phục dữ liệu. Đó là quá trình lưu trữ trạng thái hoạt động, kiến trúc và dữ liệu của cơ sở dữ liệu của bạn. Nó có thể rất hữu ích trong các tình huống mất điện kỹ thuật hoặc thảm họa. Vì vậy, điều cần thiết là giữ bản sao lưu cơ sở dữ liệu của bạn và cơ sở dữ liệu của bạn có quy trình sao lưu tốt và dễ dàng Show
MongoDB cung cấp một số công cụ/kỹ thuật để sao lưu cơ sở dữ liệu của bạn một cách dễ dàng Trong bài viết này, chúng ta sẽ thảo luận về một số quy trình sao lưu và khôi phục MongoDB hàng đầu Nói chung, có ba tùy chọn phổ biến nhất để sao lưu máy chủ/cụm MongoDB của bạn
Ngoài các tùy chọn chung này, còn có các cách khác để sao lưu MongoDB của bạn. Chúng tôi sẽ thảo luận về tất cả các tùy chọn này trong bài viết này. Bắt đầu nào MongoDump/MongoRestoreNếu bạn có một cơ sở dữ liệu nhỏ (<100GB) và bạn muốn có toàn quyền kiểm soát các bản sao lưu của mình, thì Mongodump và Mongorestore là những lựa chọn tốt nhất của bạn. Đây là các lệnh shell mongo có thể được sử dụng để sao lưu cơ sở dữ liệu hoặc bộ sưu tập của bạn theo cách thủ công. Mongodump kết xuất tất cả dữ liệu ở định dạng JSON nhị phân (BSON) đến vị trí đã chỉ định. Mongorestore có thể sử dụng tệp BSON này để khôi phục cơ sở dữ liệu của bạn Sao lưu toàn bộ cơ sở dữ liệu
đầu ra
Trong lệnh này, đối số quan trọng nhất là –db. Nó chỉ định tên của cơ sở dữ liệu mà bạn muốn sao lưu. Nếu bạn không chỉ định đối số này thì lệnh Mongodump sẽ sao lưu tất cả cơ sở dữ liệu của bạn, đây có thể là quá trình rất chuyên sâu Sao lưu một bộ sưu tập duy nhất
Lệnh này sẽ chỉ sao lưu bộ sưu tập người dùng trong cơ sở dữ liệu mydb. Nếu bạn không cung cấp tùy chọn này thì nó sẽ sao lưu tất cả bộ sưu tập trong cơ sở dữ liệu theo mặc định Thực hiện sao lưu thường xuyên bằng Mongodump/MongorestoreTheo thông lệ tiêu chuẩn, bạn nên tạo bản sao lưu thường xuyên cho cơ sở dữ liệu MongoDB của mình. Giả sử bạn muốn sao lưu hàng ngày vào lúc 3. 03 giờ sáng, sau đó trong hệ thống Linux, bạn có thể thực hiện việc này bằng cách thêm mục nhập cron vào crontab
Thêm dòng này vào crontab
Khôi phục toàn bộ cơ sở dữ liệuĐể khôi phục cơ sở dữ liệu, chúng ta có thể sử dụng lệnh Mongorestore với tùy chọn –db. Nó sẽ đọc các tệp BSON do Mongodump tạo và khôi phục cơ sở dữ liệu của bạn
đầu ra
Khôi phục toàn bộ bộ sưu tậpĐể khôi phục chỉ một bộ sưu tập từ db, bạn có thể sử dụng lệnh sau
Nếu bộ sưu tập của bạn được sao lưu ở định dạng JSON thay vì BSON thì bạn có thể sử dụng lệnh sau ________số 8_______Thuận lợi
Nhược điểm
Trình quản lý hoạt động MongoDBOps Manager là một ứng dụng quản lý dành cho MongoDB chạy trong trung tâm dữ liệu của bạn. Nó liên tục sao lưu dữ liệu của bạn và cung cấp các quy trình khôi phục tại thời điểm cho cơ sở dữ liệu của bạn. Trong ứng dụng này, có một tác nhân kết nối với các phiên bản MongoDB của bạn. Trước tiên, nó sẽ thực hiện đồng bộ hóa ban đầu để sao lưu trạng thái hiện tại của cơ sở dữ liệu. Nhân viên hỗ trợ sẽ tiếp tục gửi dữ liệu oplog được nén và mã hóa tới Trình quản lý vận hành để bạn có thể sao lưu liên tục. Sử dụng dữ liệu này, Trình quản lý hoạt động sẽ tạo ảnh chụp nhanh cơ sở dữ liệu. Nó sẽ tạo ảnh chụp nhanh cơ sở dữ liệu của bạn cứ sau 6 giờ và dữ liệu oplog sẽ được lưu trữ trong 24 giờ. Bạn có thể định cấu hình lịch chụp nhanh bất cứ lúc nào bằng Trình quản lý hoạt động Thuận lợi
Nhược điểm
Trình quản lý đám mây MongoDBMongoDB Cloud Manager là giải pháp sao lưu dựa trên đám mây, cung cấp giải pháp sao lưu trực tuyến, liên tục và khôi phục tại thời điểm dưới dạng dịch vụ được quản lý hoàn toàn. Bạn chỉ cần cài đặt tác nhân Cloud Manager để quản lý sao lưu và khôi phục cơ sở dữ liệu của mình. Nó sẽ lưu trữ dữ liệu sao lưu của bạn trong đám mây MongoDB Thuận lợi
Nhược điểm
Tệp cơ sở dữ liệu ảnh chụp nhanhĐây là giải pháp đơn giản nhất để sao lưu cơ sở dữ liệu của bạn. Bạn có thể sao chép tất cả các tệp bên dưới (nội dung của thư mục/dữ liệu) và đặt nó vào bất kỳ vị trí an toàn nào. Trước khi sao chép tất cả các tệp, bạn nên dừng tất cả các thao tác ghi đang diễn ra vào cơ sở dữ liệu để đảm bảo tính thống nhất của dữ liệu. Bạn có thể sử dụng db. lệnh fsyncLock() để dừng tất cả các thao tác ghi Có hai loại ảnh chụp nhanh. một là ảnh chụp nhanh cấp đám mây và một là ảnh chụp nhanh cấp hệ điều hành Nếu bạn đang lưu trữ dữ liệu cơ sở dữ liệu với nhà cung cấp dịch vụ đám mây như AWS thì bạn phải chụp nhanh AWS EBS để sao lưu. Ngược lại, nếu bạn đang lưu trữ các tệp DB trong hệ điều hành gốc như Linux thì bạn phải chụp nhanh LVM. Ảnh chụp nhanh LVM không thể di chuyển sang các máy khác. Vì vậy, ảnh chụp nhanh cơ sở đám mây tốt hơn ảnh chụp nhanh dựa trên hệ điều hành Thuận lợi
Nhược điểm
Công cụ sao lưu nhất quán MongoDBSao lưu nhất quán MongoDB là một công cụ để thực hiện sao lưu nhất quán các cụm MongoDB. Nó có thể sao lưu một cụm với một hoặc nhiều phân đoạn vào một điểm duy nhất của cơ sở dữ liệu. Nó sử dụng Mongodump làm phương thức sao lưu mặc định. Chạy lệnh sau để sao lưu bằng công cụ này
Tất cả các bản sao lưu được tạo bởi lệnh này đều tương thích với MongoRestore. Bạn có thể sử dụng lệnh mongorestore với tùy chọn –oplogReplay để đảm bảo tính nhất quán 0Thuận lợi
Bất lợi
Sao lưu ClusterControlClusterControl là một hệ thống quản lý cơ sở dữ liệu tự động tất cả trong một. Nó cho phép bạn giám sát, triển khai, quản lý và thay đổi quy mô các cụm cơ sở dữ liệu của mình một cách dễ dàng. Nó hỗ trợ MySQL, MongoDB, PostgreSQL, Percona XtraDB và Galera Cluster. Phần mềm này tự động hóa hầu hết tất cả các hoạt động cơ sở dữ liệu như triển khai cụm, thêm hoặc xóa nút khỏi bất kỳ cụm nào, sao lưu liên tục, mở rộng cụm, v.v. Tất cả những điều này, bạn có thể thực hiện từ một GUI duy nhất do hệ thống ClusterControl cung cấp ClusterControl cung cấp GUI rất đẹp để quản lý sao lưu MongoDB với hỗ trợ lập lịch và báo cáo sáng tạo. Nó cung cấp cho bạn hai tùy chọn cho các phương pháp sao lưu
Vì vậy, người dùng có thể chọn bất kỳ tùy chọn nào theo nhu cầu của họ. Công cụ này chỉ định một ID duy nhất cho tất cả các bản sao lưu và lưu trữ nó theo đường dẫn này. ClusterControl > Cài đặt > Sao lưu > BackupID. Nếu nút được chỉ định không hoạt động trong khi thực hiện sao lưu thì công cụ sẽ tự động tìm nút trực tiếp từ cụm và tiếp tục quá trình sao lưu trên nút đó. Công cụ này cũng cung cấp một tùy chọn để lên lịch sao lưu bằng bất kỳ phương pháp sao lưu nào ở trên. Bạn có thể bật/tắt bất kỳ công việc lập lịch trình nào chỉ bằng cách bật/tắt một nút. ClusterControl chạy quy trình sao lưu ở chế độ nền để nó không ảnh hưởng đến các công việc khác trong hàng đợi Thuận lợi
Bất lợi
Phần kết luậnMột chiến lược sao lưu tốt là một phần quan trọng của bất kỳ hệ thống quản lý cơ sở dữ liệu nào. MongoDB cung cấp nhiều tùy chọn để sao lưu và phục hồi/khôi phục. Cùng với một phương pháp sao lưu tốt, điều rất quan trọng là phải có nhiều bản sao của cơ sở dữ liệu. Điều này giúp khôi phục cơ sở dữ liệu mà không có thời gian chết dù chỉ một giây. Đôi khi đối với cơ sở dữ liệu lớn hơn, quá trình sao lưu có thể rất tốn tài nguyên. Vì vậy, máy chủ của bạn phải được trang bị CPU, RAM tốt và nhiều dung lượng ổ đĩa hơn để xử lý loại tải này. Quá trình sao lưu có thể làm tăng tải trên máy chủ vì những lý do này, vì vậy bạn nên chạy quá trình sao lưu vào ban đêm hoặc giờ thấp điểm Tiện ích nào giúp tạo bản sao lưu cơ sở dữ liệu MongoDB?MongoDB Atlas cho phép người dùng tạo bản sao lưu bằng hệ thống sao lưu đám mây. Bản sao lưu đám mây MongoDB được tạo bằng chức năng chụp nhanh gốc của nhà cung cấp dịch vụ đám mây của cụm. MongoDB Atlas hỗ trợ sao lưu đám mây cho các cụm được cung cấp trên các nền tảng lưu trữ sau. Nền tảng đám mây của Google (GCP)
Làm cách nào để sao lưu dữ liệu MongoDB?Bạn có thể tạo bản sao lưu triển khai MongoDB bằng cách tạo bản sao các tệp dữ liệu cơ bản của MongoDB . Nếu ổ đĩa nơi MongoDB lưu trữ các tệp dữ liệu của nó hỗ trợ ảnh chụp nhanh tại thời điểm, bạn có thể sử dụng các ảnh chụp nhanh này để tạo bản sao lưu của hệ thống MongoDB tại một thời điểm chính xác.
Làm cách nào để tự động sao lưu MongoDB?Nội dung . Tạo một mô-đun Terraform (tùy chọn) Tạo hình ảnh Docker với công cụ cần thiết Xác định các biến và dữ liệu Tạo một thùng S3 để lưu trữ các bản sao lưu Tạo vai trò IAM và Tài khoản dịch vụ Kubernetes Lưu trữ mật khẩu của MongoDB dưới dạng Bí mật Kubernetes Tạo Kubernetes CronJob Triển khai hạ tầng |