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

Cách cài đặt MongoDB trên Ubuntu: Hướng dẫn từng bước cho người mới bắt đầu

Học cách cài đặt MongoDB trên Ubuntu, cấu hình dịch vụ và xác minh thiết lập trong hướng dẫn thân thiện với người mới bắt đầu này.
· 4 phút đọc

Khám phá cùng AI

Vậy là bạn đã sẵn sàng thử nghiệm MongoDB trên Linux và chọn Ubuntu làm bản phân phối để làm việc. Lựa chọn tuyệt vời vì bạn sẽ có một trải nghiệm khá dễ dàng, giúp bạn chạy MongoDB trong thời gian ngắn!

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt MongoDB thông qua Trình quản lý gói của Ubuntu và thực hiện một vài cải thiện nhỏ giúp bảo mật cài đặt của bạn tốt hơn trước thế giới bên ngoài. Bạn cũng có thể xem video hướng dẫn.

Mặc dù chúng ta sẽ khám phá trải nghiệm cài đặt gốc, nếu bạn muốn dùng Docker trên Ubuntu để làm việc với MongoDB, hãy xem bài hướng dẫn trước của tôi, chạy MongoDB trong Docker. 

Yêu cầu tiên quyết

Để làm theo hướng dẫn này, bạn cần sử dụng một phiên bản Ubuntu hiện đại. Tôi đang dùng Ubuntu 25.04 bản Desktop với CPU ARM, nhưng bạn sẽ không gặp vấn đề với các kiến trúc CPU khác hoặc bản Ubuntu Server. 

Mặc dù hệ sinh thái công cụ làm việc với MongoDB khá linh hoạt, trong ví dụ này, MongoDB Shell sẽ là công cụ chính để tương tác với MongoDB.

Cài đặt MongoDB Community Edition trên Ubuntu bằng Trình quản lý gói

Vì Ubuntu là một bản phân phối Linux cực kỳ phổ biến, việc cài đặt MongoDB khá liền mạch, giống như bạn kỳ vọng khi cài các gói khác. Quy trình sẽ bao gồm thêm MongoDB làm nguồn phần mềm cho trình quản lý gói, cài gói và sau đó chạy gói đã cài.

Hãy bắt đầu bằng cách nhập khóa GPG cho MongoDB. Từ dòng lệnh, chạy lệnh sau:

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg --dearmor

Tùy theo phiên bản chính của MongoDB bạn muốn dùng, thông tin phiên bản trong lệnh này và các lệnh sau có thể cần thay đổi. Trong ví dụ này, chúng ta sẽ dùng MongoDB 8.X.

Với khóa GPG đã được nhập, ta có thể tiếp tục tạo tệp danh sách gói. Chạy lệnh sau:

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list

Cho rõ ràng: đúng là tôi đang dùng Ubuntu 25.04 (Plucky) và đúng là danh sách gói trên tham chiếu MongoDB cho 24.04 (Noble). Nó vẫn hoạt động tốt với tôi, nhưng hãy chú ý khi các phiên bản có khác biệt đáng kể. Nếu không, bạn có thể gặp kết quả ngoài ý muốn.

Đến bước này, chúng ta có thể làm mới trình quản lý gói trên máy tính:

sudo apt-get update

Để cài đặt MongoDB, chạy lệnh sau:

sudo apt-get install -y mongodb-org

Lệnh trên sẽ cài phiên bản mới nhất của MongoDB, nhưng nếu bạn cần một phiên bản cụ thể, bạn có thể thêm thông tin phiên bản trong lệnh như mongodb-org=8.0.11.

Đến lúc này, MongoDB sẽ được cài trên máy. Tuy nhiên, có thể nó chưa chạy ngay sau khi cài xong. Để chạy MongoDB trên Ubuntu, thực thi lệnh sau:

sudo systemctl start mongod

Bạn có thể kiểm tra MongoDB hoạt động đúng bằng cách kết nối từ MongoDB Shell, MongoDB Compass, hoặc các công cụ tương tự. 

Với ví dụ MongoDB Shell, bạn có thể chạy lệnh sau:

mongosh "mongodb://localhost:27017"

Tất nhiên, lệnh trên giả định bạn đang cố gắng kết nối tới phiên bản MongoDB từ cùng một máy.

Nếu cần dừng, khởi động lại MongoDB hoặc tương tự, bạn có thể sử dụng các lệnh systemctl khác nhau vốn rất phổ biến trên Ubuntu.

Thêm lớp bảo mật cơ bản cho phiên bản MongoDB trên Ubuntu

Theo mặc định, xác thực bị vô hiệu hóa trong các cài đặt MongoDB mới. Tùy trường hợp sử dụng, điều này có thể ổn, nhưng thường thì bạn nên yêu cầu ít nhất là xác thực và phân quyền.

Dĩ nhiên, bạn có thể muốn tìm hiểu thêm các thực hành tăng cường bảo mật khác như quy tắc tường lửa và tương tự, nhưng trong phạm vi hướng dẫn này, bảo vệ bản cài MongoDB trên Ubuntu bằng tên người dùng và mật khẩu là một điểm khởi đầu tốt.

Trên Ubuntu, chạy lệnh sau:

sudo vi /etc/mongod.conf

Nếu bạn muốn dùng nano hoặc công cụ khác để chỉnh tệp này, cũng hoàn toàn ổn.

Đi tới dòng #security và sửa thành như sau:

security:
	authorization: "enabled"

Sau khi lưu tệp, khởi động lại phiên bản MongoDB bằng cách chạy:

sudo systemctl restart mongod

Chúng ta vẫn chưa xong. Mới chỉ bật xác thực, nhưng ta cần tạo người dùng quản trị.

Nếu bạn dùng MongoDB Shell, hãy chạy:

use admin;

db.createUser({
	"user": "nraboy",
	"pwd": "mongodb",
	"roles": [
		{
			"role": "userAdminAnyDatabase",
			"db": "admin"
		}
	]
});

Có lẽ bạn sẽ muốn đổi user và pwd thành giá trị hợp lý và an toàn hơn, nhưng đây chỉ là ví dụ.

Giờ đây, khi muốn kết nối tới MongoDB bằng MongoDB Shell, bạn sẽ dùng lệnh như sau:

mongosh --host localhost --port 27017 -u nraboy -p --authenticationDatabase admin

Trải nghiệm có thể hơi khác tùy công cụ bạn dùng, nhưng bạn có thể nắm được ý chính dựa trên thông tin chúng tôi cung cấp.

Kết luận

Bạn vừa thấy cách triển khai MongoDB trên máy chủ Linux—đặc biệt là Ubuntu. Điểm tuyệt vời ở MongoDB là khá dễ cài đặt và chạy ở bất kỳ đâu và trên mọi loại phần cứng. 

Nếu MongoDB Atlas không phải lựa chọn và bạn cần khám phá thứ gì đó ngoài Ubuntu, có thể bạn sẽ quan tâm tới bài hướng dẫn khác của tôi trình bày cách triển khai bằng container với Docker. Tuy nhiên, nếu bạn sẵn sàng bước tiếp, hãy xem bài hướng dẫn trước đây của tôi về tạo Cơ sở dữ liệu trong MongoDB.

Nếu bạn làm việc với Python và thích cách học có cấu trúc, hãy xem khóa học Giới thiệu về MongoDB trong Python.

FAQs

Tôi có thể cài MongoDB trên Ubuntu bằng Snap hoặc Flatpak không?

Mặc dù Snap và Flatpak hỗ trợ nhiều ứng dụng trên Ubuntu, MongoDB nên được cài đặt qua kho APT chính thức để đảm bảo tính tương thích và cập nhật.

MongoDB có được hỗ trợ trên cả Ubuntu Server và Desktop không?

Có, MongoDB hoạt động trơn tru trên cả Ubuntu Server và Desktop. Quy trình cài đặt hầu như giống hệt nhau, dù môi trường máy chủ có thể cần cân nhắc bảo mật bổ sung.

Làm thế nào để gỡ cài đặt hoàn toàn MongoDB khỏi Ubuntu?

Chạy sudo apt-get purge mongodb-org* sau đó sudo rm -r /var/log/mongodb /var/lib/mongodb để gỡ hoàn toàn MongoDB và dữ liệu liên quan.

Làm sao để kiểm tra phiên bản MongoDB đã cài trên Ubuntu?

Dùng lệnh mongod --version hoặc mongosh --version tùy thành phần bạn muốn kiểm tra. Chúng sẽ cho bạn phiên bản hiện được cài đặt.

Làm sao để bật MongoDB khởi động cùng hệ thống trên Ubuntu?

Bật dịch vụ MongoDB bằng sudo systemctl enable mongod. Lệnh này đảm bảo MongoDB tự động khởi động mỗi khi hệ thống boot.

Làm sao để cập nhật MongoDB trên Ubuntu mà không bị lỗi?

Để cập nhật MongoDB an toàn, trước hết hãy kiểm tra tính tương thích với cấu hình và dữ liệu hiện tại. Sau đó chạy sudo apt-get update && sudo apt-get upgrade mongodb-org nếu dùng kho chính thức.

Làm sao để sao lưu dữ liệu MongoDB trên Ubuntu?

Dùng công cụ mongodump đi kèm MongoDB để tạo bản sao lưu. Bạn cũng có thể lập lịch với cron để thực hiện sao lưu tự động định kỳ.

Có an toàn không nếu để MongoDB chạy trên Ubuntu lộ ra internet?

Mặc định là không. Bạn luôn nên dùng tường lửa, VPN hoặc đường hầm SSH, và bắt buộc xác thực. Mở MongoDB không được bảo vệ ra internet là rủi ro bảo mật.

Nic Raboy

Tác giả

Nic Raboy

Nic Raboy là Trưởng bộ phận Quan hệ Nhà phát triển tại MongoDB, nơi anh dẫn dắt một đội ngũ các nhà phát triển Python, Java, C# và PHP tạo ra nội dung xuất sắc giúp các nhà phát triển triển khai MongoDB thành công trong dự án của mình. Anh có kinh nghiệm với Golang và JavaScript, và thường xuyên viết về nhiều hành trình phát triển của bản thân.

Chủ đề

Liên quan