Mọi thứ bạn cần biết về cài đặt và quản lý MongoDB trên hệ thống Ubuntu
MongoDB là một cơ sở dữ liệu hướng tài liệu, mã nguồn mở, NoSQL được sử dụng để quản lý các ứng dụng web. Nó tự động lưu trữ dữ liệu trong các tài liệu được định dạng JSON mà không yêu cầu các lược đồ xác định trước như cơ sở dữ liệu dựa trên bảng thông thường.
Trong bài viết này, chúng ta sẽ xem xét cách cài đặt và cấu hình MongoDB trên hệ thống Ubuntu 20.04 LTS.
Điều kiện tiên quyết
Trước khi chúng tôi bắt đầu, hãy đăng nhập với tư cách là người dùng đã bật sudo và cập nhật và nâng cấp các gói trên máy chủ của bạn bằng cách đưa ra lệnh hiển thị bên dưới.
cập nhật sudo apt & & nâng cấp sudo apt
Cài đặt MongoDB trên Ubuntu 20.04
Có hai cách để cài đặt MongoDB trên máy Ubuntu của bạn. Đầu tiên, từ kho lưu trữ Ubuntu mặc định, chứa phiên bản cũ hơn, MongoDB 3.6. Và thứ hai, bằng cách thêm kho lưu trữ gói chuyên dụng của MongoDB (chứa phiên bản mới nhất MongoDB 4.4) vào đúng cách
tài nguyên của hệ thống của bạn.
MongoDB Inc không hỗ trợ gói mongoDB trong kho lưu trữ Ubuntu. Nó cũng khác với mongodb-org
các gói. Vì vậy, bạn nên cài đặt MongoDB bằng cách thêm kho lưu trữ gói chuyên dụng của MongoDB vào đúng cách
tài nguyên.
Cài đặt MongoDB bằng cách thêm kho lưu trữ chính thức
Đầu tiên, nhập khóa GPG công khai của phiên bản MongoDB mới nhất. Để tìm khóa thích hợp, hãy truy cập URL này và tìm kiếm server-x.x.asc
tệp tương ứng với phiên bản mới nhất hiện tại của MongoDB.
Tại thời điểm viết bài này, phiên bản mới nhất của MongoDB là 4.4
. Vì vậy, chúng tôi sẽ chọn điều đó và sử dụng lệnh bên dưới để nhập khóa GPG cho phiên bản 4.4.
wget -qO - //www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
Khi thực hiện thành công, lệnh sẽ đưa ra kết quả là VÂNG
.
Vì chúng tôi cần mongodb-org
để cài đặt phiên bản MongoDB mới nhất, thêm kho lưu trữ MongoDB chính thức vào hệ thống của bạn bằng lệnh bên dưới.
echo "deb [Arch = amd64, arm64] //repo.mongodb.org/apt/ubuntu tiêu điểm / mongodb-org / 4.4 đa vũ trụ" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
Bây giờ hãy cập nhật cơ sở dữ liệu gói cục bộ và cài đặt mongodb-org
gói bằng cách chạy các lệnh bên dưới từng cái một.
sudo apt-get update -y sudo apt-get install mongodb-org -y
Sau khi MongoDB được cài đặt, hãy bắt đầu và bật mongod
dịch vụ trên hệ thống của bạn bằng các lệnh bên dưới.
systemctl start mongod systemctl enable mongod
Để xác minh MongoDB đang chạy trên hệ thống của bạn, hãy sử dụng lệnh bên dưới. Nó sẽ xuất ra trạng thái là đang hoạt động.
trạng thái systemctl mongod
mongod.service - Máy chủ cơ sở dữ liệu MongoDB đã tải: đã tải (/lib/systemd/system/mongod.service; đã kích hoạt; nhà cung cấp p> Đang hoạt động: hoạt động (đang chạy) kể từ Thứ ba 2020-08-18 09:01:48 UTC; 45 giây trước Tài liệu : //docs.mongodb.org/manual Main PID: 13739 (mongod) Bộ nhớ: 79,1M Nhóm CG: /system.slice/mongod.service └─13739 / usr / bin / mongod --config /etc/mongod.conf
Bạn cũng có thể kiểm tra trạng thái kết nối, phiên bản hiện tại, địa chỉ máy chủ và cổng bằng lệnh sau:
mongo --eval 'db.runCommand ({connectionStatus: 1})'
Nếu trạng thái kết nối hiển thị ok: 1
, thì nó có nghĩa là máy chủ đang hoạt động bình thường, như được hiển thị trong đầu ra bên dưới.
MongoDB shell phiên bản v4.2.8 kết nối với: mongodb: //127.0.0.1: 27017 /? Wrapper = disable & gssapiServiceName = mongodb Phiên ẩn: phiên {"id": UUID ("6ba987a2-30fc-4d84-8665-57f28b1bbfd9")} MongoDB phiên bản máy chủ: 4.2.8 {"authInfo": {"authenticatedUsers": [], "authenticatedUserRoles": []}, "ok": 1}
Số cổng mặc định của MongoDB là 27017
, đang chạy trên 127.0.0.1
, là địa chỉ loopback cho localhost.
Định cấu hình MongoDB
Định cấu hình MongoDB là tùy chọn vì cài đặt cấu hình mặc định đủ để đáp ứng nhu cầu của bạn, nhưng đối với môi trường sản xuất, bạn nên bật ủy quyền.
Tệp cấu hình của MongoDB có trong /Vân vân
danh mục. Để chỉnh sửa nó, hãy nhập lệnh sau vào thiết bị đầu cuối của bạn.
nano /etc/mongod.conf
Bây giờ, hãy chuyển đến cuối tệp và bỏ ghi chú tùy chọn bảo mật bằng cách xóa #
ký hiệu và loại ủy quyền: đã bật
như hình bên dưới.
bảo mật: ủy quyền: đã bật
Khởi động lại MongoDB bằng lệnh sau để áp dụng các thay đổi.
systemctl khởi động lại mongod
Để biết thêm về cấu hình MongoDB, hãy truy cập trang tài liệu này.
Tạo và xác minh quản trị viên MongoDB
Bây giờ chúng ta sẽ tạo một người dùng quản trị có thể truy cập vào cơ sở dữ liệu MongoDB.
Tạo quản trị viên MongoDB
Để truy cập trình bao MongoDB, hãy sử dụng mongo
yêu cầu.
mongo
Sau đó, truy cập cơ sở dữ liệu quản trị MongoDB bằng lệnh sau.
sử dụng quản trị viên
Bây giờ sử dụng lệnh sau để tạo người dùng và mật khẩu mới với vai trò userAdminAnyDatabase
.
db.createUser ({user: "UserName", pwd: "PasswordOfYourChoice", role: [{role: "userAdminAnyDatabase", db: "admin"}]})
Ghi chú: Thay thế giá trị của người dùng (Tên tài khoản
) và mật khẩu (passwordOfYourChoice
) để bạn lựa chọn.
Sau khi tạo thành công người dùng MongoDB, hãy nhập từ bỏ()
để thoát khỏi vỏ.
từ bỏ()
Xác minh xác thực quản trị viên
Để kiểm tra xác thực, truy cập tài khoản quản trị bằng lệnh bên dưới.
mongo -u UserName -p --authenticationDatabase admin
Trình bao sẽ nhắc bạn nhập mật khẩu. Nhập mật khẩu bạn đã chọn cho người dùng trong hướng dẫn ở trên và nhấn đi vào
.
Sau đó, truy cập cơ sở dữ liệu quản trị bằng lệnh sau.
sử dụng quản trị viên
Bây giờ, phát hành hiển thị cho người dùng
lệnh trong shell để tìm nạp thông tin chi tiết của tất cả người dùng đã xác thực.
hiển thị cho người dùng
{"_id": "admin.UserName", "userId": UUID ("d5e186d7-0520-41a5-8f42-da3b7b8e8868"), "người dùng": "Tên người dùng", "db": "quản trị viên", "vai trò": [{"role": "userAdminAnyDatabase", "db": "admin"}], "domains": ["SCRAM-SHA-1", "SCRAM-SHA-256"]}
Bạn sẽ thấy Tên người dùng bạn đã tạo trong các bước ở trên trong đầu ra.
Quản lý MongoDB
Để quản lý các quy trình mongod, chúng tôi sử dụng trong đó
hệ thống của Ubuntu. Các phiên bản Ubuntu từ 16.04 sử dụng Xenial systemd
để quản lý MongoDB, sử dụng systemctl
yêu cầu.
Dừng dịch vụ mongod
Để ngăn chặn mongod
sử dụng lệnh sau.
sudo systemctl dừng mongod
Bắt đầu dịch vụ mongod
Để bắt đầu mongod
sử dụng lệnh sau.
sudo systemctl start mongod
Khởi động lại Mongod
Để khởi động lại mongod
sử dụng lệnh sau.
sudo systemctl khởi động lại mongod
Chúng tôi đã cài đặt thành công phiên bản MongoDB mới nhất trên máy Ubuntu 20.04 của bạn. Để biết thêm về MongoDB, hãy tham khảo tài liệu này.