MongoDB là một hệ thống cơ sở dữ liệu hướng tài liệu mã nguồn mở và đa nền tảng được viết bằng C++. Nó lưu trữ dữ liệu trong các bộ sưu tập tài liệu linh hoạt giống JSON và được sử dụng để tạo các trang web và ứng dụng mạnh mẽ. Do khả năng mở rộng và hiệu suất cao, nó được sử dụng để xây dựng các ứng dụng hiện đại yêu cầu cơ sở dữ liệu mạnh mẽ, quan trọng đối với nhiệm vụ và có tính khả dụng cao.
Trong hướng dẫn này, chúng tôi sẽ giải thích cách cài đặt và sử dụng hệ thống cơ sở dữ liệu MongoDB trên máy chủ Ubuntu 20.04.
Đầu tiên, cài đặt gói Gnupg bằng lệnh sau:
Tiếp theo, tải xuống và thêm khóa GPG MongoDB bằng lệnh sau:
Tiếp theo, thêm kho lưu trữ MongoDB bằng lệnh sau:
Tiếp theo, hãy cập nhật kho lưu trữ và cài đặt MongoDB bằng lệnh sau:
Sau khi quá trình cài đặt hoàn tất, hãy khởi động dịch vụ MongoDB và cho phép dịch vụ này khởi động khi khởi động lại bằng lệnh sau:
Bây giờ bạn có thể kiểm tra trạng thái của dịch vụ MongoDB bằng lệnh sau:
Bạn sẽ nhận được kết quả đầu ra sau:
Bạn cũng có thể xác minh phiên bản MongoDB và địa chỉ máy chủ bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Bạn có thể thực hiện bằng cách chỉnh sửa tệp /etc/mongod.conf:
Thêm các dòng sau:
Lưu và đóng tệp, sau đó khởi động lại dịch vụ MongoDB để áp dụng các thay đổi:
Trước tiên, hãy truy cập bảng điều khiển MongoDB bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Tiếp theo, hãy kết nối với cơ sở dữ liệu quản trị bằng lệnh sau:
Bạn sẽ thấy kết quả sau:
Tiếp theo, tạo một người dùng quản trị mới và đặt mật khẩu bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Tiếp theo, thoát khỏi bảng điều khiển MongoDB bằng lệnh sau:
Bây giờ, hãy thử kết nối với MongoDB bằng người dùng mà bạn đã tạo trước đó:
Bạn sẽ được yêu cầu cung cấp mật khẩu như hiển thị bên dưới:
Cung cấp mật khẩu quản trị viên của bạn và nhấn Enter. Bạn sẽ thấy kết quả đầu ra sau:
Bây giờ, hãy đổi cơ sở dữ liệu thành admin bằng lệnh sau:
Bạn sẽ thấy kết quả đầu ra sau:
Bây giờ, hãy liệt kê người dùng bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Trong hướng dẫn này, chúng tôi sẽ giải thích cách cài đặt và sử dụng hệ thống cơ sở dữ liệu MongoDB trên máy chủ Ubuntu 20.04.
Điều kiện tiên quyết
- Máy chủ chạy Ubuntu 20.04.
- Mật khẩu gốc được cấu hình trên máy chủ của bạn.
Cài đặt MongoDB
Theo mặc định, phiên bản MongoDB mới nhất không có trong kho lưu trữ mặc định của Ubuntu 20.04. Vì vậy, bạn sẽ cần thêm kho lưu trữ MongoDB chính thức vào hệ thống của mình.Đầu tiên, cài đặt gói Gnupg bằng lệnh sau:
Mã:
apt-get install gnupg -y
Mã:
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | apt-key add -
Mã:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.2.list
Mã:
apt-get update -y
apt-get install mongodb-org -y
Mã:
systemctl start mongod
systemctl enable mongod
Mã:
systemctl status mongod
Mã:
? mongod.service - MongoDB Database Server Đã tải: đã tải (/lib/systemd/system/mongod.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ sáu 2020-05-15 05:30:39 UTC; 18 giây trước Tài liệu: https://docs.mongodb.org/manual PID chính: 106996 (mongod) Bộ nhớ: 76,0M CGroup: /system.slice/mongod.service ??106996 /usr/bin/mongod --config /etc/mongod.conf15 tháng 5 05:30:39 ubuntu2004 systemd[1]: Đã khởi động MongoDB Database Server.15 tháng 5 05:30:48 ubuntu2004 systemd[1]: /lib/systemd/system/mongod.service:11: PIDFile= tham chiếu đến một đường dẫn bên dưới thư mục cũ /var/run/, upd>dòng 1-11/11 (KẾT THÚC)
Mã:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Mã:
Phiên bản shell MongoDB v4.2.6đang kết nối tới: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodbPhiên ngầm định: session { "id" : UUID("e1575445-f441-4b30-a5d7-4cf68852e68f") }Phiên bản máy chủ MongoDB: 4.2.6{ "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1}
Cấu hình MongoDB
Tệp cấu hình mặc định của MongoDB nằm tại /etc/mongod.conf. Theo mặc định, mỗi người dùng sẽ có quyền truy cập vào tất cả các cơ sở dữ liệu và thực hiện bất kỳ hành động nào. Đối với môi trường sản xuất, bạn nên bật xác thực MongoDB.Bạn có thể thực hiện bằng cách chỉnh sửa tệp /etc/mongod.conf:
Mã:
nano /etc/mongod.conf
Mã:
security: authorization: enabled
Mã:
systemctl restart mongod
Tạo người dùng quản trị MongoDB
Sau khi bật xác thực MongoDB, bạn sẽ cần tạo người dùng quản trị để truy cập và quản lý cơ sở dữ liệu MongoDB.Trước tiên, hãy truy cập bảng điều khiển MongoDB bằng lệnh sau:
Mã:
mongo
Mã:
Phiên bản shell MongoDB v4.2.6đang kết nối tới: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodbPhiên ngầm định: session { "id" : UUID("9ee0ea0c-cf95-4b83-9e88-00dc3a61e0a6") }Phiên bản máy chủ MongoDB: 4.2.6Chào mừng đến với shell MongoDB.Để được trợ giúp tương tác, hãy nhập "help".Để biết tài liệu toàn diện hơn, hãy xem http://docs.mongodb.org/Bạn có thắc mắc? Hãy thử nhóm hỗ trợ http://groups.google.com/group/mongodb-user
Mã:
> sử dụng admin
Mã:
chuyển sang db admin
Mã:
> db.createUser( { user: "admin", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
Mã:
Đã thêm người dùng thành công: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ]}
Mã:
> quit()
Xác minh Xác thực MongoDB
Tại thời điểm này, MongoDB được cấu hình với xác thực.Bây giờ, hãy thử kết nối với MongoDB bằng người dùng mà bạn đã tạo trước đó:
Mã:
mongo -u admin -p --authenticationDatabase admin
Mã:
Phiên bản shell MongoDB v4.2.6Nhập mật khẩu:
Mã:
connecting to: mongodb://127.0.0.1:27017/?authSource=admin&compressors=disabled&gssapiServiceName=mongodbPhiên ngầm định: session { "id" : UUID("00d6d1eb-d1c3-41ea-89c7-d46ec6d17bee") }Phiên bản máy chủ MongoDB: 4.2.6
Mã:
> use admin
Mã:
switched to db admin
Mã:
> hiển thị người dùng
Mã:
{ "_id" : "admin.admin", "userId" : UUID("65907484-9d67-4e6e-bb88-a6666310e963"), "user" : "admin", "db" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ], "mechanisms" : [ "SCRAM-SHA-1", "SCRAM-SHA-256" ]}>