Cách cài đặt MongoDB trên Ubuntu 20.04

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.