Chuyển đến nội dung chính

MongoDB Atlas CLI: Quản lý cơ sở dữ liệu từ dòng lệnh

MongoDB Atlas CLI mang đến lựa chọn nhanh hơn so với giao diện web. Bạn có thể chạy và tự động hóa các tác vụ quản trị cơ sở dữ liệu trực tiếp từ terminal.
· 12 phút đọc

Khám phá cùng AI

MongoDB Atlas là dịch vụ cơ sở dữ liệu trên đám mây cho phép bạn triển khai, quản lý và mở rộng cơ sở dữ liệu MongoDB. Bạn có thể quản lý Atlas qua Atlas UI (giao diện web) hoặc Atlas CLI, một công cụ dòng lệnh cho phép bạn thực hiện các tác vụ tương tự bằng lệnh.

MongoDB Atlas CLI mang đến lựa chọn nhanh hơn so với Atlas UI. Bạn có thể chạy và tự động hóa các tác vụ quản trị cơ sở dữ liệu trực tiếp từ terminal.

Trong bài viết này, tôi sẽ hướng dẫn bạn sử dụng Atlas CLI để quản lý cơ sở dữ liệu.

Điều kiện tiên quyết

Trước khi bắt đầu, hãy đảm bảo bạn có:

  • Tài khoản MongoDB Atlas.
  • Kiến thức cơ bản về dòng lệnh.
  • Yêu cầu cài đặt Atlas CLI cho hệ điều hành của bạn.

Cấu trúc lệnh CLI

MongoDB Atlas CLI tuân theo cấu trúc lệnh nhất quán:

atlas [command] [subcommand] [flags]

Khi bạn chạy một lệnh không có subcommand hoặc cờ, CLI sẽ hiển thị thông tin trợ giúp bao gồm:

  • Usage: Cách sử dụng lệnh.
  • Aliases: Tên thay thế cho lệnh.
  • Available commands: Các lệnh con có thể chạy.
  • Flags: Các tùy chọn dành riêng cho lệnh.
  • Global flags: Các tùy chọn dùng chung cho mọi lệnh CLI.

Ví dụ, nếu bạn chạy:

atlas clusters

Bạn sẽ nhận được phản hồi tương tự như sau:

Manage clusters for your project. The clusters command provides access to your cluster configurations. You can create, edit, and delete clusters.

Usage:
  atlas clusters [command]

Aliases:
  clusters, cluster

Available Commands:
  list              Return all clusters for your project.
  describe          Return the details for the specified cluster for your project.
  advancedSettings  Manage advanced configuration settings for your cluster.
 ...

Flags:
  -h, --help   help for clusters

Global Flags:
  -P, --profile string   Name of the profile to use from your configuration file. To learn about profiles for the Atlas CLI, see https://dochub.mongodb.org/core/atlas-cli-save-connection-settings.

Use "atlas clusters [command] --help" for more information about a command.

Tên lệnh, đối số và tên cờ trong Atlas CLI có phân biệt chữ hoa/thường. Hãy dùng đúng kiểu viết hoa như trong ví dụ—ví dụ, --orgId không phải --orgID.

Tạo một triển khai MongoDB

Triển khai (deployment) là một phiên bản MongoDB đang chạy để lưu trữ và phục vụ dữ liệu của bạn. Mỗi triển khai bao gồm máy chủ cơ sở dữ liệu, lưu trữ, mạng và sao lưu tự động. MongoDB Atlas xử lý quản trị hạ tầng, vì vậy bạn có thể tập trung sử dụng cơ sở dữ liệu thay vì duy trì máy chủ.

Để tạo một triển khai MongoDB, cài đặt hoặc cập nhật Atlas CLI, sau đó chạy lệnh:

atlas setup

Lệnh atlas setup sẽ hướng dẫn bạn qua một quy trình tương tác. Nó yêu cầu bạn chọn cấu hình và tạo dự án, cấp phát cluster, cũng như cấu hình các thiết lập bảo mật cơ bản.

Xác thực với một triển khai hiện có

Nếu bạn đã có một triển khai MongoDB Atlas và muốn quản lý bằng CLI, bạn cần xác thực. Để đăng nhập, chạy:

atlas auth login

Lệnh này yêu cầu bạn chọn loại xác thực, sau đó cung cấp một mã xác minh dùng một lần. Sao chép mã và dán vào trình duyệt khi được nhắc. Ví dụ:

atlas auth login
? Select authentication type: UserAccount

To verify your account, copy your one-time verification code:
QPWF-6GT4

Paste the code in the browser when prompted to activate your Atlas CLI. Your code will expire after 3 minutes.

To continue, go to https://account.mongodb.com/account/connect

Press Enter to open the browser and complete authentication...
Successfully logged in as [email protected].

Sau khi xác thực, bạn sẽ chọn tổ chức mặc định và định dạng đầu ra. CLI lưu phiên của bạn, nhưng sẽ hết hạn định kỳ. Khi thấy lỗi "session expired", hãy chạy lại atlas auth login.

Quản lý hồ sơ (profile) cho nhiều môi trường

Hồ sơ (profile) cho phép bạn quản lý nhiều môi trường MongoDB Atlas từ cùng một bản cài CLI. Mỗi hồ sơ lưu cài đặt kết nối cho một môi trường khác nhau như development, staging hoặc production.

Với hồ sơ, bạn có thể nhanh chóng chuyển đổi giữa các môi trường mà không cần xác thực lại hoặc thay đổi tệp cấu hình. Điều này hữu ích khi bạn duy trì các dự án hoặc tổ chức MongoDB Atlas tách biệt cho các giai đoạn khác nhau trong quy trình phát triển.

Một thực hành phổ biến là tạo các dự án Atlas riêng cho mỗi môi trường và dùng hồ sơ để quản lý—ví dụ:

  • Hồ sơ Development: Trỏ tới dự án dev của bạn với cluster M0 nhỏ để thử nghiệm.
  • Hồ sơ Staging: Trỏ tới dự án staging phản chiếu cấu hình production.
  • Hồ sơ Production: Trỏ tới dự án production với các cluster đạt chuẩn vận hành.

Tạo hồ sơ cho các môi trường khác nhau

Khi lần đầu chạy atlas auth login, CLI sẽ tạo một hồ sơ mặc định. Để tạo thêm hồ sơ cho môi trường khác, dùng cờ --profile:

atlas auth login --profile dev

Lệnh này tạo hồ sơ tên "dev" và hướng dẫn bạn qua quy trình xác thực. Lặp lại cho từng môi trường:

atlas auth login --profile staging
atlas auth login --profile production

Mỗi hồ sơ lưu thông tin xác thực, dự án mặc định và thiết lập tổ chức riêng.

Liệt kê các hồ sơ khả dụng

Để xem tất cả hồ sơ đã cấu hình, chạy:

atlas config list

Lệnh này hiển thị tất cả tên hồ sơ bạn đã tạo.

Xem chi tiết hồ sơ

Để xem cấu hình của một hồ sơ cụ thể, chạy:

atlas config describe <profileName>

Ví dụ:

atlas config describe dev

Lệnh này hiển thị các thiết lập của hồ sơ, bao gồm ID tổ chức và dự án mặc định.

Chuyển đổi giữa các hồ sơ

Để dùng một hồ sơ cụ thể cho một lệnh, thêm cờ --profile:

atlas clusters list --profile production

Lệnh này liệt kê cluster sử dụng thông tin xác thực và thiết lập của hồ sơ production.

Bạn cũng có thể đặt một hồ sơ mặc định để không cần chỉ định trong mỗi lệnh:

atlas config set --profile staging

Sau khi đặt mặc định, mọi lệnh sẽ dùng hồ sơ đó, trừ khi bạn ghi đè bằng cờ --profile.

Cập nhật thiết lập hồ sơ

Để sửa cấu hình của một hồ sơ, chạy:

atlas config set <setting> <value> --profile <profileName>

Ví dụ, để đặt dự án mặc định cho hồ sơ dev:

atlas config set project_id 5f8e8d9a1b2c3d4e5f6g7h8i --profile dev

Đổi tên hồ sơ

Để đổi tên một hồ sơ, chạy:

atlas config rename <oldName> <newName>

Ví dụ:

atlas config rename dev development

Quản lý dự án

Dự án (project) trong MongoDB Atlas tổ chức cluster, người dùng và thiết lập của bạn. Hãy coi một dự án như vùng chứa gom nhóm các tài nguyên cơ sở dữ liệu có liên quan.

Mỗi dự án có thể chứa nhiều cluster và có tập người dùng cùng cơ chế kiểm soát truy cập riêng. Sự tách biệt này hữu ích khi bạn có các ứng dụng, môi trường hoặc đội nhóm khác nhau cần tài nguyên cơ sở dữ liệu độc lập.

Tạo dự án

Để tạo dự án mới, chạy:

atlas projects create <projectName> [options]

Hãy dùng tên dự án mô tả rõ mục đích, như "ecommerce-transactions" hoặc "mobile-app-staging".

[options] bao gồm các cờ để điều chỉnh cách và nơi tạo dự án. Ví dụ, bạn có thể chỉ định tổ chức để tạo dự án trong đó:

atlas projects create mobile-app-staging --orgId <organizationId>

Cờ --orgId chỉ định tổ chức nơi tạo dự án. Cờ này là bắt buộc trừ khi bạn đã đặt tổ chức mặc định. Bạn có thể chạy lệnh atlas organizations list để nhận danh sách tổ chức và Id của chúng. 

In all examples, replace placeholders like <projectId>, <clusterName>, and <username> with your actual project, cluster, or user names and identifiers.

Cập nhật dự án

Để cập nhật thiết lập dự án, dùng:

atlas projects update <projectId> [options]

Ví dụ, bạn có thể dùng cờ --name để đổi tên dự án:

atlas projects update <projectId> --name newProjectName

Liệt kê dự án

Để liệt kê tất cả dự án trong tổ chức của bạn, dùng:

atlas projects list [options]

Lệnh trên dùng cờ --orgId để chỉ định tổ chức cần liệt kê dự án:

atlas projects list --orgId <organizationId>

Bạn cũng có thể điều khiển định dạng đầu ra, ví dụ hiển thị kết quả ở dạng JSON:

atlas projects list --output json

Xóa dự án

Bạn có thể xóa một dự án bằng lệnh Atlas CLI.

atlas projects delete <projectId> --orgId <organizationId>

Bạn không thể xóa dự án vẫn còn cluster hoạt động. Vì vậy, trước khi xóa dự án, hãy đảm bảo xóa tất cả cluster bên trong.

Quản lý cluster

Cluster là nhóm máy chủ MongoDB lưu trữ dữ liệu của bạn. Atlas quản lý hạ tầng, nhân bản (replication) và sao lưu cho cluster của bạn.

Tạo cluster

Để tạo một cluster mới, chạy:

atlas clusters create <clusterName> [options]

[options] bao gồm các cờ chỉ định cấu hình cluster. Ví dụ, bạn có thể thêm tùy chọn để cấu hình nhà cung cấp đám mây, khu vực và hạng mức giá MongoDB:

atlas clusters create myCluster --provider AWS --region US_EAST_1 --tier M0

Trong lệnh này, cờ --provider chỉ định nhà cung cấp đám mây như AWS, GCP hoặc Azure. Cờ --region chỉ định khu vực triển khai cluster. Cờ --tier chỉ định kích thước cluster.

Nếu bạn chưa đặt dự án mặc định, hãy thêm cờ --projectId:

atlas clusters create myCluster --projectId <projectId> --provider AWS --region US_EAST_1 --tier M0

Mô tả cluster

Để xem chi tiết về một cluster cụ thể, chạy:

atlas clusters describe <clusterName> --projectId <projectId>

Lệnh này hiển thị cấu hình, kích thước, khu vực và chuỗi kết nối của cluster.

Liệt kê cluster

Để liệt kê tất cả cluster trong dự án của bạn, chạy:

atlas clusters list --projectId <projectId>

Cờ --projectId là bắt buộc trừ khi bạn đã đặt dự án mặc định bằng:

atlas config set project_id <projectId>

Tạm dừng cluster

Bạn có thể tạm thời dừng một cluster mà không xóa nó. Việc này dừng hoạt động của cluster nhưng vẫn giữ dữ liệu và cấu hình:

atlas clusters pause <clusterName> --projectId <projectId>

Xóa cluster

Để xóa vĩnh viễn một cluster, chạy:

atlas clusters delete <clusterName> --projectId <projectId>

Sau khi tạo cluster, bạn phải cấu hình bảo mật mạng trước khi có thể kết nối.

Quản lý cấu hình danh sách truy cập IP

Danh sách truy cập IP kiểm soát địa chỉ IP nào có thể kết nối tới các cluster MongoDB Atlas của bạn. Mỗi dự án có thể có tối đa 200 mục danh sách truy cập IP. Bạn có thể thêm từng địa chỉ IP, dải IP theo CIDR, hoặc ID nhóm bảo mật AWS. Dải theo CIDR xác định một khối địa chỉ IP bằng IP cơ sở và tiền tố—ví dụ, 192.168.0.0/24. ID nhóm bảo mật AWS cho phép truy cập từ mọi tài nguyên trong nhóm bảo mật AWS đã chỉ định.

Để quản lý danh sách truy cập IP, bạn phải có quyền Project Owner đối với dự án.

Thêm địa chỉ IP vào danh sách truy cập

Để thêm địa chỉ IP hiện tại của bạn vào danh sách truy cập, chạy:

atlas accessLists create --currentIp --projectId <projectId>

Cờ --currentIp tự động thêm địa chỉ IP của máy đang chạy lệnh. Điều này hữu ích khi bạn cần truy cập nhanh từ máy phát triển.

Để thêm một địa chỉ IP cụ thể, chạy:

atlas accessLists create <ipAddress> --type ipAddress --projectId <projectId>

<ipAddress> là địa chỉ IP bạn muốn cho phép. Ví dụ:

atlas accessLists create 192.0.2.15 --type ipAddress --comment "Office network" --projectId <projectId>

Cờ --comment thêm mô tả giúp bạn nhận diện mục sau này.

Để thêm một dải địa chỉ IP theo ký hiệu CIDR, chạy:

atlas accessLists create <cidrBlock> --type cidrBlock --projectId <projectId>

Ví dụ:

atlas accessLists create 73.231.201.0/24 --type cidrBlock --comment "Development servers" --projectId <projectId>

Tạo mục danh sách truy cập tạm thời

Để thêm một địa chỉ IP tự động hết hạn sau thời gian đặt trước, dùng cờ --deleteAfter. Bạn có thể đặt ngày hết hạn tối đa bảy ngày kể từ hiện tại:

atlas accessLists create <ipAddress> --type ipAddress --deleteAfter <isoDateTime> --projectId <projectId>

Cờ --deleteAfter nhận ngày theo định dạng ISO-8601. Ví dụ:

atlas accessLists create 192.0.2.20 --type ipAddress --deleteAfter 2025-12-31T23:59:59Z --comment "Temporary contractor access" --projectId <projectId>

MongoDB Atlas sẽ tự động xóa mục sau ngày giờ được chỉ định.

Liệt kê các mục danh sách truy cập IP

Để xem tất cả mục danh sách truy cập IP trong dự án của bạn, chạy:

atlas accessLists list --projectId <projectId>

Để xem chi tiết về một mục cụ thể, chạy:

atlas accessLists describe <entry> --projectId <projectId>

<entry> là địa chỉ IP, khối CIDR, hoặc ID nhóm bảo mật AWS bạn muốn xem.

Xóa mục danh sách truy cập IP

Để gỡ một địa chỉ IP khỏi danh sách truy cập, chạy:

atlas accessLists delete <entry> --projectId <projectId>

Quản lý người dùng và vai trò

Vai trò cấp quyền thực hiện một tập hành động trên tài nguyên cụ thể. Người dùng là thực thể được gán một hoặc nhiều vai trò xác định những gì họ có thể truy cập trong cơ sở dữ liệu.

Để cấu hình người dùng và vai trò cơ sở dữ liệu, bạn phải có quyền Organization Owner, Project Owner, hoặc Project Database Access Admin trong MongoDB Atlas.

Quản lý người dùng

Để tạo người dùng cơ sở dữ liệu, chạy:

atlas dbusers create [builtInRole] [options]

[builtInRole] là một hoặc nhiều vai trò dựng sẵn để gán cho người dùng. [options] bao gồm các cờ chỉ định thông tin xác thực và cấu hình của người dùng. Ví dụ:

atlas dbusers create --username myUser --password myPassword --role readWriteAnyDatabase --projectId <projectId>

Cờ --username chỉ định tên người dùng. Cờ --password chỉ định mật khẩu. Cờ --role chỉ định vai trò để gán. Trong trường hợp này, tên người dùng là myUser, mật khẩu là myPassword. 

Để liệt kê tất cả người dùng cơ sở dữ liệu trong dự án của bạn, chạy:

atlas dbusers list --projectId <projectId>

Để xem chi tiết về một người dùng cụ thể, chạy:

atlas dbusers describe <username> --projectId <projectId>

Bạn cũng có thể cập nhật người dùng. Ví dụ, để cập nhật mật khẩu, chạy:

atlas dbusers update myUser --password newPassword --projectId <projectId>

Để cập nhật vai trò của người dùng, chạy:

atlas dbusers update myUser --role readWriteAnyDatabase --role dbAdmin --projectId <projectId>

Để xóa một người dùng cụ thể, chạy:

atlas dbusers delete <username> --projectId <projectId>

Quản lý vai trò

Có hai nhóm vai trò bạn có thể gán cho người dùng:

  • Vai trò dựng sẵn (Built-in)
  • Vai trò tùy chỉnh (Custom)

Vai trò dựng sẵn

Các vai trò dựng sẵn do MongoDB Atlas cung cấp. Chúng bao gồm các tập quyền phổ biến cho những trường hợp sử dụng khác nhau, như:

  • read: Cấp quyền chỉ đọc cho một cơ sở dữ liệu cụ thể.
  • readWrite: Cho phép đọc và sửa dữ liệu trong một cơ sở dữ liệu cụ thể.
  • readAnyDatabase: Cấp quyền chỉ đọc cho tất cả cơ sở dữ liệu trừ local và config.
  • readWriteAnyDatabase: Cấp quyền đọc/ghi cho tất cả cơ sở dữ liệu.
  • dbAdmin: Cấp quyền quản trị cho một cơ sở dữ liệu cụ thể, như tạo chỉ mục hoặc xem thống kê.
  • dbAdminAnyDatabase: Cấp quyền quản trị trên tất cả cơ sở dữ liệu.
  • clusterAdmin: Cho phép quản lý toàn bộ cluster, bao gồm replication và sharding.
  • userAdminAnyDatabase: Cho phép tạo và sửa tài khoản người dùng cùng vai trò trên tất cả cơ sở dữ liệu.

Bạn không thể sửa hoặc xóa vai trò dựng sẵn. Bạn chỉ có thể gán chúng cho người dùng. Để gán vai trò dựng sẵn khi tạo người dùng, chỉ định vai trò bằng cờ --role:

atlas dbusers create --username app-reader --password myPassword --role readAnyDatabase --projectId <projectId>

Để gán hoặc thay đổi vai trò của người dùng hiện có, chạy:

atlas dbusers update app-reader --role readWriteAnyDatabase --projectId <projectId>

Xem [Built-In Roles and Privileges](https://www.mongodb.com/docs/atlas/mongodb-users-roles-and-privileges/?utm_campaign=devrel&utm_source=third-party-content&utm_medium=cta&utm_content=atlas-cli-datacamp&utm_term=megan.grant) để biết thêm các vai trò dựng sẵn có thể gán.

Vai trò tùy chỉnh

MongoDB Atlas cho phép bạn tạo vai trò tùy chỉnh khi vai trò dựng sẵn không đáp ứng nhu cầu. Vai trò tùy chỉnh xác định một tập hành động đặc quyền phù hợp với yêu cầu của ứng dụng hoặc đội ngũ của bạn.

Khi tạo vai trò tùy chỉnh, hãy quyết định người dùng nên truy cập những bộ sưu tập (collection) nào và được phép thực hiện hành động gì trên tài nguyên—ví dụ, đọc, chèn, cập nhật hoặc xóa dữ liệu.

Trong định nghĩa đặc quyền của MongoDB, bạn phải dùng tên hành động đặc quyền viết hoa trong lệnh CLI, như FIND, không phải find. Xem Privilege Actions để biết thêm các hành động đặc quyền người dùng có thể thực hiện trên tài nguyên.

Bạn có thể quản lý vai trò tùy chỉnh bằng Atlas CLI.

Để tạo vai trò tùy chỉnh, chạy:

atlas customDbRoles create <roleName> [options]

<roleName> là tên vai trò tùy chỉnh bạn muốn tạo. [options] bao gồm các cờ chỉ định quyền của vai trò—ví dụ:

atlas customDbRoles create customAnalyticsRole --privilege [email protected]

Trong lệnh trên:

  • customAnalyticsRole là tên vai trò tùy chỉnh mới. Bạn có thể chọn bất kỳ tên mô tả nào phản ánh mục đích của vai trò.
  • Cờ --privilege chỉ định các hành động trên tài nguyên mà vai trò được phép thực hiện.
  • Định dạng là [email protected], trong đó @ tách hành động và tài nguyên.
  • FIND là một hành động đặc quyền được MongoDB công nhận.
  • myDatabase.users là tài nguyên mà đặc quyền áp dụng—trong trường hợp này là collection users trong cơ sở dữ liệu myDatabase.

Để xem chi tiết về vai trò tùy chỉnh, chạy:

atlas customDbRoles list --projectId <projectId>

Lệnh trên hiển thị tất cả vai trò tùy chỉnh và quyền của chúng.

Để cập nhật vai trò tùy chỉnh, chạy:

atlas customDbRoles update <roleName> [options]

[options] bao gồm các cờ chỉ định nội dung cần cập nhật. Ví dụ, để thêm đặc quyền mới cho vai trò hiện có, chạy:

atlas customDbRoles update customAnalyticsRole --privilege [email protected] --privilege [email protected] --projectId <projectId>

Lệnh trên cập nhật customAnalyticsRole hiện có để cấp thêm đặc quyền. [email protected] cho phép vai trò đọc tài liệu từ collection analytics, và [email protected] cho phép thêm tài liệu vào collection logs trong cơ sở dữ liệu myDatabase.

Cờ --projectId chỉ định vai trò thuộc dự án MongoDB Atlas nào.

Để xóa một vai trò tùy chỉnh, chạy:

atlas customDbRoles delete <roleName> --projectId <projectId>

Quy trình gán vai trò tùy chỉnh cho người dùng tương tự gán vai trò dựng sẵn. Dùng cờ --role với lệnh atlas dbusers create hoặc atlas dbusers update:

atlas dbusers create --username analytics-user --password myPassword --role customAnalyticsRole --projectId <projectId>

Sau khi tạo người dùng cơ sở dữ liệu và gán vai trò, bạn đã sẵn sàng kết nối tới cluster.

Lấy chuỗi kết nối

Chuỗi kết nối chứa thông tin mà ứng dụng của bạn cần để kết nối tới cluster Atlas. Chuỗi này bao gồm hostname của cluster, cơ sở dữ liệu xác thực và các tùy chọn kết nối.

Trước khi dùng chuỗi kết nối, hãy đảm bảo bạn đã cấu hình danh sách truy cập IP và tạo ít nhất một người dùng cơ sở dữ liệu.

Lấy chuỗi kết nối cho một cluster

Để lấy chuỗi kết nối cho một cluster, chạy:

atlas clusters connectionStrings describe <clusterName> --projectId <projectId>

Lệnh này trả về chuỗi kết nối SRV cho cluster của bạn.

Định dạng chuỗi kết nối

MongoDB Atlas cung cấp hai loại chuỗi kết nối:

Chuỗi kết nối chuẩn (mongodb://): Liệt kê tường minh tất cả nút của cluster. Dùng định dạng này khi bạn cần chỉ định từng địa chỉ máy chủ.

Chuỗi kết nối SRV (mongodb+srv://): Dùng DNS để tự động lấy thông tin cluster. Đây là định dạng được khuyến nghị vì nó tự động cập nhật nếu cấu hình cluster thay đổi.

Sử dụng chuỗi kết nối

Thay <username> và <password> trong chuỗi kết nối bằng thông tin xác thực người dùng cơ sở dữ liệu của bạn:

mongodb+srv://<username>:<password>@cluster0.example.mongodb.net/

Ví dụ, nếu tên người dùng của bạn là appUser và mật khẩu là securePass123:

mongodb+srv://appUser:[email protected]/

Bạn có thể dùng chuỗi kết nối này với MongoDB Drivers, MongoDB Shell, hoặc các công cụ MongoDB khác để kết nối tới cluster.

Quản lý sao lưu

Sao lưu là bản sao dữ liệu cơ sở dữ liệu của bạn để khôi phục cluster khi dữ liệu bị mất hoặc hỏng. Atlas tự động tạo bản sao lưu theo lịch trình định kỳ.

Automated continuous backups are only available for M10+ dedicated clusters. M0 free-tier clusters do not have backup capabilities. M2/M5 shared clusters have basic cloud backups, but not continuous backup. For more information, see [Snapshots for Flex Clusters](https://www.mongodb.com/docs/atlas/backup-restore-cluster/?utm_campaign=devrel&utm_source=third-party-content&utm_medium=cta&utm_content=atlas-cli-datacamp&utm_term=megan.grant#snapshots-for-flex-clusters).

Để quản lý sao lưu, bạn phải có quyền Organization Owner hoặc Project Owner trong Atlas.

Tạo sao lưu theo yêu cầu

Để tạo bản sao lưu ngay lập tức, chạy:

atlas backups snapshots create <clusterName> --desc "Backup description" --projectId <projectId>

Trong lệnh trên, --desc là cờ bắt buộc mô tả snapshot.

Liệt kê các bản sao lưu khả dụng

Để liệt kê tất cả bản sao lưu cho một cluster, chạy:

atlas backups snapshots list <clusterName> --projectId <projectId>

Mô tả cấu hình sao lưu

Để xem thiết lập sao lưu cho một cluster, chạy:

atlas backups schedule describe <clusterName> --projectId <projectId>

Khôi phục từ sao lưu

Để khôi phục dữ liệu từ bản sao lưu, chạy:

atlas backups restores start <clusterName> --snapshotId <snapshotId> --targetClusterName <targetClusterName> --projectId <projectId>

Cờ --snapshotId chỉ định bản sao lưu cần khôi phục. Cờ --targetClusterName chỉ định tên cluster sẽ được khôi phục dữ liệu tới—ví dụ:

atlas backups restores start myCluster --snapshotId 5f8e8d9a1b2c3d4e5f6g7h8i --targetClusterName myCluster-restored --projectId <projectId>

Xóa sao lưu

Để xóa một bản sao lưu, chạy:

atlas backups snapshots delete <snapshotId> --projectId <projectId>

Kết luận

Trong bài viết này, tôi đã giới thiệu cấu trúc lệnh CLI, cách tạo triển khai, quản lý dự án và cluster, cấu hình người dùng và vai trò, cũng như quản lý sao lưu. Bạn có thể tự động hóa các thao tác này bằng cách kết hợp chúng trong các script, giúp quản lý nhiều môi trường dễ dàng hơn và tích hợp quản trị cơ sở dữ liệu vào quy trình phát triển.

FAQs

Tôi có cần xác thực mỗi lần dùng MongoDB Atlas CLI không?

Không. CLI lưu phiên làm việc của bạn sau khi bạn chạy atlas auth login. Tuy nhiên, vì lý do bảo mật, phiên sẽ hết hạn theo định kỳ. Bạn chỉ cần xác thực lại khi thấy lỗi "session expired".

Tôi có thể dùng Atlas CLI với cluster free tier (M0) không?

Có, bạn có thể quản lý các cluster free tier bằng MongoDB Atlas CLI cho hầu hết thao tác như tạo người dùng, quản lý vai trò và cấu hình cluster. Tuy nhiên, các thao tác sao lưu không khả dụng với cluster free hoặc shared tier.

Sự khác nhau giữa vai trò người dùng MongoDB Atlas và vai trò cơ sở dữ liệu là gì?

Vai trò người dùng Atlas (như Organization Owner, Project Owner và Project Cluster Manager) kiểm soát ai có thể quản lý nền tảng MongoDB Atlas qua UI, CLI hoặc API. Vai trò cơ sở dữ liệu (như read, readWrite và vai trò tùy chỉnh) kiểm soát những gì người dùng cơ sở dữ liệu có thể làm khi họ kết nối tới MongoDB. Bạn cần vai trò người dùng Atlas phù hợp để tạo và gán vai trò cơ sở dữ liệu cho người dùng cơ sở dữ liệu.

Tôi có thể quản lý nhiều dự án MongoDB Atlas bằng cùng một bản cài CLI không?

Có, bạn có thể quản lý nhiều dự án với một bản cài CLI. Bạn có thể đặt dự án mặc định trong quá trình xác thực, hoặc chỉ định dự án cần dùng bằng cách thêm cờ --projectId vào lệnh. Để làm việc với nhiều tổ chức, dùng cờ --orgId. Bạn có thể liệt kê tất cả dự án bằng atlas projects list và các tổ chức bằng atlas organizations list.

Tôi tìm ID tổ chức và ID dự án của mình ở đâu?

Chạy atlas organizations list để xem tất cả tổ chức và ID của bạn. Chạy atlas projects list để xem tất cả dự án và ID của chúng.

Damilola Oladele

Tác giả

Damilola Oladele

Chủ đề

Liên quan