Cách cài đặt và bảo mật cơ sở dữ liệu MongoDB NoSQL trên Ubuntu 22.04

theanh

Administrator
Nhân viên
MongoDB là một hệ thống cơ sở dữ liệu mã nguồn mở miễn phí và là một trong những hệ thống cơ sở dữ liệu NoSQL phổ biến nhất. Nó lưu trữ dữ liệu trong JSON thay vì phương pháp kiểu bảng thông thường có trong cơ sở dữ liệu SQL. Nó có thể dễ dàng tích hợp với các chương trình khác nên được sử dụng rộng rãi trong các ứng dụng web. Nó không yêu cầu lược đồ được xác định trước và cấu trúc dữ liệu có thể thay đổi theo thời gian. Nó được viết bằng C++ và cung cấp khả năng mở rộng, hiệu suất cao và tính khả dụng cao.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt MongoDB trên Ubuntu 22.04.

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

  • Máy chủ chạy Ubuntu 22.04.
  • Mật khẩu gốc được cấu hình trên máy chủ.

Thêm kho lưu trữ MongoDB​

Theo mặc định, gói MongoDB không được bao gồm trong kho lưu trữ mặc định của Ubuntu 22.04 nên bạn sẽ cần thêm kho lưu trữ chính thức của MongoDB vào APT.

Trước tiên, hãy cài đặt tất cả các phụ thuộc cần thiết bằng lệnh sau:
Mã:
apt install wget gnupg2 curl -y
Tiếp theo, hãy tải xuống và thêm khóa GPG MongoDB bằng lệnh sau:
Mã:
curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -
Tiếp theo, hãy thêm kho lưu trữ MongoDB vào APT bằng lệnh sau:
Mã:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list
Sau khi kho lưu trữ MongoDB được thêm vào, hãy cập nhật bộ đệm kho lưu trữ bằng lệnh sau:
Mã:
apt update -y

Cài đặt MongoDB trên Ubuntu 22.04​

Bây giờ bạn có thể cài đặt gói MongoDB bằng lệnh sau:
Mã:
apt install mongodb-org -y
Tiếp theo, 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 hệ thống bằng lệnh sau:
Mã:
systemctl start mongod
Bạn có thể kiểm tra trạng thái của MongoDB bằng lệnh sau:
Mã:
systemctl status mongod
Bạn sẽ thấy đầu ra sau:
Mã:
? mongod.service - Máy chủ cơ sở dữ liệu MongoDB Đã tải: đã tải (/lib/systemd/system/mongod.service; đã tắ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ứ bảy 2022-05-28 15:04:49 UTC; 7 giây trước Tài liệu: https://docs.mongodb.org/manual PID chính: 27422 (mongod) Bộ nhớ: 63,3M CPU: 967ms CGroup: /system.slice/mongod.service ??27422 /usr/bin/mongod --config /etc/mongod.conf28 tháng 5 15:04:49 ubuntu2204 systemd[1]: Đã khởi động MongoDB Database Server.
Để kiểm tra phiên bản MongoDB, hãy sử dụng lệnh sau:
Mã:
mongo --version
Bạn sẽ thấy phiên bản MongoDB trong đầu ra sau:
Mã:
Phiên bản shell MongoDB v4.4.14Thông tin bản dựng: { "version": "4.4.14", "gitVersion": "0b0843af97c3ec9d2c0995152d96d2aad725aab7", "openSSLVersion": "OpenSSL 1.1.1l 24 tháng 8 năm 2021", "modules": [], "allocator": "tcmalloc", "environment": { "distmod": "ubuntu2004", "distarch": "x86_64", "target_arch": "x86_64" }}
Bạn cũng có thể kiểm tra thông tin kết nối MongoDB bằng lệnh sau:
Mã:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Bạn sẽ nhận được kết quả sau:
Mã:
Phiên bản shell MongoDB v4.4.14đang kết nối tới: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodbPhiên ngầm định: session { "id" : UUID("44560246-9673-418a-95c9-112bba345f4f") }Phiên bản máy chủ MongoDB: 4.4.14{ "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1}

Tạo Người dùng Quản trị MongoDB​

Theo mặc định, có thể truy cập MongoDB mà không cần bất kỳ tên người dùng và mật khẩu nào. Vì lý do bảo mật, bạn nên tạo một người dùng quản trị để xác thực MongoDB.

Trước tiên, hãy đăng nhập vào shell MongoDB bằng lệnh sau:
Mã:
mongo
Sau khi đăng nhập, hãy đổi cơ sở dữ liệu thành admin bằng lệnh sau:
Mã:
use admin
Tiếp theo, hãy tạo một người dùng quản trị và đặt mật khẩu bằng lệnh sau:
Mã:
db.createUser( { user: "admin", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] })
Bạn sẽ thấy đầu ra sau:
Mã:
Đã thêm người dùng thành công: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ]}
Tiếp theo, hãy chỉnh sửa tệp cấu hình MongoDB và 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 cấu hình MongoDB:
Mã:
nano /etc/mongod.conf
Thêm dòng sau để bật xác thực MongoDB:
Mã:
security: authorization: enabled
Lưu và đóng tệp, sau đó khởi động lại dịch vụ MongoDB để áp dụng các thay đổi:
Mã:
systemctl restart mongod

Xác minh xác thực MongoDB​

Bây giờ, bạn có thể xác minh xác thực MongoDB bằng lệnh sau:
Mã:
mongo -u admin -p --authenticationDatabase admin
Bạn sẽ được yêu cầu cung cấp mật khẩu quản trị MongoDB:
Mã:
Phiên bản shell MongoDB v4.4.14Nhập mật khẩu:
Cung cấp mật khẩu quản trị của bạn và nhấn phím Enter. Bạn sẽ thấy kết quả đầu ra sau:
Mã:
connecting to: mongodb://127.0.0.1:27017/?authSource=admin&compressors=disabled&gssapiServiceName=mongodbPhiên ngầm định: session { "id" : UUID("05106893-c382-4895-a55b-7560858b31eb") }Phiên bản máy chủ MongoDB: 4.4.14>
Để liệt kê tất cả các cơ sở dữ liệu MongoDB, hãy chạy lệnh sau:
Mã:
> show dbs
Bạn sẽ thấy kết quả đầu ra sau:
Mã:
admin 0.000GBconfig 0.000GBlocal 0.000GB

Kết luận​

Xin chúc mừng! bạn đã cài đặt thành công MongoDB trên Ubuntu 22.04. Bây giờ bạn có thể sử dụng MongoDB làm backend cơ sở dữ liệu cho các ứng dụng web hiệu suất cao. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên