Cách cài đặt MongoDB trên Rocky Linux 8

Tác giả NetworkEngineer, T.M.Một 03, 2021, 12:43:29 SÁNG

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt MongoDB trên Rocky Linux 8


MongoDB là một cơ sở dữ liệu hướng tới tài liệu mã nguồn mở và miễn phí. Không giống như cơ sở dữ liệu quan hệ, lưu trữ dữ liệu trong các bảng và yêu cầu các lược đồ xác định trước trước khi thêm dữ liệu mới, tài liệu trong MongoDB là bộ sưu tập không có thứ tự của các cặp khóa / giá trị với các lược đồ động (tức là không có lược đồ cố định). Như vậy, cùng một trường có thể chứa một số nguyên, một chuỗi hoặc một đối tượng, nó chỉ phụ thuộc vào những gì bạn cần cho ứng dụng của mình. Hơn nữa, do tính chất động của nó, MongoDB hoạt động rất tốt để lưu trữ các đối tượng JSON, khiến nó trở thành một cơ sở dữ liệu nhẹ nhàng.

Mặc dù MongoDB hỗ trợ các chỉ mục phụ, nhưng chúng không bắt buộc đối với mọi trường hợp. Điều này có nghĩa là việc đọc với MongoDB có thể chậm hơn một chút so với một số cơ sở dữ liệu quan hệ (vì bạn cần đọc nhiều trường hơn từ đĩa), nhưng ghi thường nhanh hơn vì không liên quan đến bảo trì chỉ mục.

MongoDB hữu ích cho bất kỳ người dùng Linux nào cần lưu trữ và quản lý dữ liệu (quan hệ và phi cấu trúc), đặc biệt khi bạn cần khả năng mở rộng hoặc tính sẵn sàng cao. Lý do chính mà MongoDB ngày càng phổ biến là nó cung cấp khả năng lưu trữ tài liệu JSON, làm cho nó trở nên phù hợp tuyệt vời cho các ứng dụng Web kết hợp được sử dụng bởi cả ứng dụng di động (ví dụ: iPhone) và trình duyệt máy tính để bàn truyền thống (ví dụ: Firefox). Bởi vì các ứng dụng này phục vụ nhiều loại máy khách với các yêu cầu lưu trữ dữ liệu khác nhau, MongoDB có thể là một lựa chọn lý tưởng vì thiết kế ít giản đồ của nó hỗ trợ tính chất động của dữ liệu trong các ứng dụng Web hiện đại này.

Một lĩnh vực khác mà MongoDB tỏa sáng là các trang mạng xã hội như Twitter, Facebook và LinkedIn. Các trang web này ngày càng cung cấp các API REST để lưu trữ các kết nối xã hội của bạn (ví dụ: bạn bè, lượt thích) dưới dạng tài liệu JSON, khiến chúng cũng rất phù hợp với MongoDB.

MongoDB cũng được sử dụng bởi các nhà cung cấp điện toán đám mây như EC2 của Amazon và Heroku vì khả năng mở rộng và tính sẵn sàng cao của nó phù hợp với nhu cầu của họ để có thể xử lý dữ liệu lớn có thể thay đổi nhanh chóng.

Trong hướng dẫn này, mình sẽ chỉ cho bạn cách thiết lập cơ sở dữ liệu MongoDB của riêng bạn trên hệ điều hành Rocky Linux 8. Sau khi cài đặt phần mềm, chúng ta sẽ tạo cơ sở dữ liệu và làm một số công việc quản trị cơ bản.

Để làm theo hướng dẫn này, bạn phải có Rocky Linux 8 đang chạy và phải đăng nhập với tư cách người dùng không phải root với các quyền sudo.

1. Cập nhật hệ thống

Trước khi cài đặt bất kỳ phần mềm nào, bạn nên chạy lệnh sau để đảm bảo rằng tất cả các gói hệ thống của bạn đều được cập nhật:

Mã nguồn [Chọn]
$ sudo dnf -y update
Khởi động lại máy chủ để các thay đổi của hệ thống có hiệu lực, sau đó đăng nhập lại với cùng một người dùng không phải root.

2. Thêm Kho lưu trữ MongoDB

Kho lưu trữ MongoDB trước tiên phải được thêm vào trước khi cài đặt MongoDB trên hệ thống của bạn. Bạn có hai lựa chọn: bạn có thể tải xuống và cài đặt phiên bản CE của chương trình, phiên bản này có khả năng hạn chế nhưng miễn phí cho mục đích sử dụng cá nhân hoặc mua quyền truy cập thương mại vào các tính năng mạnh mẽ hơn.

Để cài đặt kho lưu trữ MongoDB trên Rocky Linux 8, hãy chạy lệnh sau.

Mã nguồn [Chọn]
$ sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo<<EOF
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF

3. Cài đặt MongoDB trên Rocky Linux 8

Bây giờ kho lưu trữ MongoDB đã được thiết lập, bạn có thể cài đặt MongoDB 5.0 bằng cách chạy lệnh sau.

Mã nguồn [Chọn]
$ sudo dnf install mongodb-org

Sau khi cài đặt xong, hãy khởi động và bật dịch vụ MongoDB để tự động khởi động khi hệ thống khởi động lại.

Mã nguồn [Chọn]
$ sudo systemctl start mongod
Mã nguồn [Chọn]
$ sudo systemctl enable mongod
Để kiểm tra phiên bản MongoDB, hãy chạy lệnh sau:

Mã nguồn [Chọn]
$ mongo --version

Để kiểm tra xem dịch vụ MongoDB có đang chạy hay không, hãy chạy lệnh sau:

Mã nguồn [Chọn]
$ sudo systemctl status mongod
Bạn sẽ thấy một đầu ra giống như sau.


Để kiểm tra xem MongoDB đã chạy cài đặt thích hợp chưa, hãy chạy lệnh sau. Daemon MongoDB phải sẵn sàng và chờ kết nối, như được hiển thị bằng một dòng trong đầu ra.


4. Kiểm tra cài đặt MongoDB

Sau khi quá trình cài đặt hoàn tất, bây giờ bạn có thể bắt đầu sử dụng MongoDB. Theo mặc định, MongoDB lắng nghe trên cổng 27017 tại địa chỉ IP của máy chủ lưu trữ cục bộ của bạn. Như vậy, tất cả các lệnh sẽ được chạy trên localhost.

Với mục đích trình diễn, mình sẽ chỉ cho bạn cách kết nối với MongoDB shell và chèn các bản ghi (tức là tài liệu) vào một bộ sưu tập thử nghiệm (tức là bảng). Tất nhiên, trước khi làm như vậy, bạn phải đảm bảo rằng Daemon MongoDB đang chạy trên máy chủ của bạn cho mục đích thử nghiệm.

Bạn có thể đăng nhập vào MongoDB shell bằng lệnh sau.

Mã nguồn [Chọn]
$ mongo
Lệnh này sẽ đăng nhập bạn vào MongoDB shell mà không cần thiết lập xác thực.


Trong MongoDB shell, bạn có thể chạy bất kỳ lệnh quản lý cơ sở dữ liệu nào. MongoDB cung cấp một cơ sở dữ liệu mẫu được gọi là thử nghiệm, đây là một nơi tốt để bắt đầu. Để nhận danh sách tất cả cơ sở dữ liệu có sẵn trên máy chủ, hãy chạy lệnh sau tại trình bao MongoDB.

Mã nguồn [Chọn]
$ db

Để tạo cơ sở dữ liệu mới trong MongoDB, hãy chạy lệnh sau.

Mã nguồn [Chọn]
use DATABASE_NAME
Trong đó DATABASE_NAME là tên của cơ sở dữ liệu bạn muốn tạo. Nếu cơ sở dữ liệu có tên đó đã tồn tại, lệnh này sẽ chuyển sang cơ sở dữ liệu hiện tại. Nếu cơ sở dữ liệu không tồn tại, nó sẽ được tạo tự động. Nếu lệnh thành công, nó sẽ trả về thông báo "Switched to db DATABASE_NAME."

Hãy tạo một cơ sở dữ liệu có tên linux_mongo

Mã nguồn [Chọn]
$ use linux_mongo

Khi bạn đã tạo cơ sở dữ liệu, bạn có thể chèn các bản ghi vào cơ sở dữ liệu (bộ sưu tập) bằng cách chạy lệnh sau.

Mã nguồn [Chọn]
db.linux.insertOne(
{ "ubuntu" : "20.04",
"rocky linux" : "8",
"debian" : "11",
"alma linux" : "8",
}
)

Nhấn Enter để chèn dữ liệu.


Để liệt kê các bộ sưu tập cơ sở dữ liệu, chỉ cần gõ lệnh show collection trong MongoDB shell.

Mã nguồn [Chọn]
show collections
Đầu ra sẽ tương tự như thế này.


Để hiển thị tất cả nội dung hoặc dữ liệu của bộ sưu tập từ một bộ sưu tập, hãy sử dụng:

Mã nguồn [Chọn]
db.NAME-OF-COLLECTION.find().pretty()
Phương thức pretty() trong Mongo sẽ in kết quả khá đẹp, đặc biệt tốt cho con người. Hãy hiển thị tất cả dữ liệu từ bộ sưu tập linux mà mình đã tạo ở trên.

Mã nguồn [Chọn]
db.linux.find().pretty()
Đầu ra sẽ tương tự như thế này.


Để thoát khỏi shell MongoDB, hãy nhập lệnh sau tại dấu nhắc.

Mã nguồn [Chọn]
exit
Trong hướng dẫn này, mình đã chỉ cho bạn cách cài đặt và cấu hình MongoDB trên hệ thống Rocky Linux. Mình cũng đã chỉ cho bạn một vài lệnh cơ bản để chỉ cho bạn cách kết nối với MongoDB shell, hiển thị tất cả cơ sở dữ liệu và bộ sưu tập tồn tại trong phiên bản MongoDB của bạn.

Hướng dẫn này chỉ là hướng dẫn cài đặt cơ bản. Để biết thêm thông tin, vui lòng tham khảo tài liệu MongoDB có sẵn trên trang chủ.