Giới thiệu
MongoDB là một cơ sở dữ liệu NoSQL được sử dụng nhiều trong các web app hiện đại. Nó lưu trữ dữ liệu dưới dạng JSON với lược đồ[schema] động, nghĩa là, không giống như cơ sở dữ liệu có quan hệ, MongoDB không bắt buộc định nghĩa schema trước khi thêm dữ liệu vào database. Chúng ta có thể thay đổi schema bất cứ lúc nào cần mà không cần tạo database mới. Bài này sẽ hướng dẫn cách cài đặt MongoDB và sử dụng trên máy Ubuntu dùng command line.
Bước 1 - Cài đặt MongoDB
Trong package repositories chính thức của Ubuntu chỉ chứa phiên bản ổn định của MongoDB. Để cài được version mới nhất hoặc một version nào đó không có trong đó cần đưa gói Mongo package repository tương ứng vào APT [Advanced Package Tool - là một công cụ được sử dụng để quản lý các gói phần mềm trên các bản phân phối Linux thuộc dòng Ubuntu/Debian.] của máy mình. Sau đó thì mình có thể cài
Output
OK
3, cái này là một gói meta, có thể trỏ đến tất cả version từ đây, mặc định là version mới nhất.Xong màn dạo đầu, mình bắt tay vào cài. Những command sau icon 😱 là những command mình cần bấm.
- Đầu tiên cần add public key GPG vào key chains của máy mình.
😱
curl -fsSL //www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
Ở đây tui cài version 4.4, bạn có thể thay đổi version bạn thích bằng cách thay đổi đường dẫn tới version đó. cURL là một công cụ dòng lệnh có sẵn trên nhiều hệ điều hành được sử dụng để truyền dữ liệu. Nó đọc bất kỳ dữ liệu nào được lưu trữ tại URL được chuyển đến nó và in nội dung ra đầu ra của hệ thống. Trong command này, cURL sẽ mở kết nối đến //www.mongodb.org/static/pgp/server-4.4.asc và nhận về GPG key file [bạn có thể thử bấm
Output
OK
4 để xem hình hài cái key nó ra sao nha] và truyền vào lệnh sau Output
OK
5. Giả sử nhận về GPG key ABC thì kết quả sẽ tương ứng command Output
OK
6. Thêm option Output
OK
7 [fail silently] của cURL để khi kết nối tới //www.mongodb.org/static/pgp/server-4.4.asc bị lỗi gì đó thì sẽ k in gì ra system output, tránh add bậy bạ lum la vào key list.Command này ra out put OK là add key thành công:
Output
OK
Muốn kiểm tra lại cho chắc thì mở key list ra coi:
apt-key list
Kiếm trong danh sách sẽ thấy key của Mongo
Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
Tại thời điểm này, cài đặt APT của bạn vẫn chưa biết tìm
Output
OK
8 gói bạn cần để cài đặt phiên bản MongoDB đó ở đâu.Có hai nơi trên máy chủ của bạn nơi APT tìm kiếm các gói online để tải xuống và cài đặt: file
Output
OK
9 và thư mục apt-key list
0 . Output
OK
9 là một file liệt kê các nguồn dữ liệu APT đang hoạt động, với một nguồn trên mỗi dòng và các nguồn ưu tiên nhất được liệt kê đầu tiên. Thư mục apt-key list
0 cho phép bạn thêm các file Output
OK
9 riêng biệt vào.Chạy lệnh sau, lệnh này sẽ tạo một file trong
apt-key list
0 có tên apt-key list
5. Nội dung duy nhất trong file này là một dòng apt-key list
6 😱 echo "deb [ arch=amd64,arm64 ] //repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
Dòng này cho APT biết mọi thứ nó cần biết về nguồn của gói là gì và tìm gói đó ở đâu:
apt-key list
7: Ê mày máy tao kiến trúc Debian thông thường. Hoặc nếu kiến trúc Debian phân tán mã nguồn thì sửa thành apt-key list
8. apt-key list
9: Kiến trúc mà dữ liệu APT sẽ được tải xuống. Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
0: Vị trí có thể tìm thấy dữ liệu APT - nơi đặt kho lưu trữ MongoDB chính thức. Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
1: Kho Ubuntu có thể chứa một số bản phát hành khác nhau. Điều này chỉ rõ rằng bạn chỉ muốn phiên bản 4.4 của Output
OK
8 gói có sẵn cho phiên bản Ubuntu Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
3 [“Focal Fossa” là tên mã của Ubuntu 20.04]. Muốn biết máy bạn mã nào thì bấm Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
4 và update command theo. Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
5: Phần này trỏ APT đến một trong bốn kho lưu trữ chính của Ubuntu. Trong trường hợp này, nó trỏ đến kho Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
5.Sau khi chạy lệnh này, hãy cập nhật chỉ mục gói: 😱
sudo apt update
Sau đó có thể tải về: 😱
sudo apt install mongodb-org
Note: Phàm mọi câu hỏi trên đời liên quan tới license cứ Yes[Y] là được.
Bước 2 - Khởi động Mongo service
Mông cô bê đê vừa cài hoạt động như một Daemon [Disk And Execution MONitor là một chương trình chạy như một tiến trình nền chứ không phải là một tiến trình tương tác], nên ta dùng systemd để điều khiển.
Khởi động
😱
sudo systemctl start mongod.service
Ở đây tui cài version 4.4, bạn có thể thay đổi version bạn thích bằng cách thay đổi đường dẫn tới version đó. cURL là một công cụ dòng lệnh có sẵn trên nhiều hệ điều hành được sử dụng để truyền dữ liệu. Nó đọc bất kỳ dữ liệu nào được lưu trữ tại URL được chuyển đến nó và in nội dung ra đầu ra của hệ thống. Trong command này, cURL sẽ mở kết nối đến //www.mongodb.org/static/pgp/server-4.4.asc và nhận về GPG key file [bạn có thể thử bấm Output
OK
4 để xem hình hài cái key nó ra sao nha] và truyền vào lệnh sau Output
OK
5. Giả sử nhận về GPG key ABC thì kết quả sẽ tương ứng command Output
OK
6. Thêm option Output
OK
7 [fail silently] của cURL để khi kết nối tới //www.mongodb.org/static/pgp/server-4.4.asc bị lỗi gì đó thì sẽ k in gì ra system output, tránh add bậy bạ lum la vào key list.
Output
OK
Output
OK
Output
OK
Output
OK
😱
sudo systemctl status mongod
Ở đây tui cài version 4.4, bạn có thể thay đổi version bạn thích bằng cách thay đổi đường dẫn tới version đó. cURL là một công cụ dòng lệnh có sẵn trên nhiều hệ điều hành được sử dụng để truyền dữ liệu. Nó đọc bất kỳ dữ liệu nào được lưu trữ tại URL được chuyển đến nó và in nội dung ra đầu ra của hệ thống. Trong command này, cURL sẽ mở kết nối đến //www.mongodb.org/static/pgp/server-4.4.asc và nhận về GPG key file [bạn có thể thử bấm Output
OK
4 để xem hình hài cái key nó ra sao nha] và truyền vào lệnh sau Output
OK
5. Giả sử nhận về GPG key ABC thì kết quả sẽ tương ứng command Output
OK
6. Thêm option Output
OK
7 [fail silently] của cURL để khi kết nối tới //www.mongodb.org/static/pgp/server-4.4.asc bị lỗi gì đó thì sẽ k in gì ra system output, tránh add bậy bạ lum la vào key list.
Output
OK
Output
OK
Output
OK
Output
OK
sudo systemctl restart mongod
Command này ra out put OK là add key thành công:
Output
OK
0Muốn kiểm tra lại cho chắc thì mở key list ra coi:
Output
OK
1Kiếm trong danh sách sẽ thấy key của Mongo
Tại thời điểm này, cài đặt APT của bạn vẫn chưa biết tìm
Output
OK
8 gói bạn cần để cài đặt phiên bản MongoDB đó ở đâu.Output
OK
2Có hai nơi trên máy chủ của bạn nơi APT tìm kiếm các gói online để tải xuống và cài đặt: file Output
OK
9 và thư mục apt-key list
0 . Output
OK
9 là một file liệt kê các nguồn dữ liệu APT đang hoạt động, với một nguồn trên mỗi dòng và các nguồn ưu tiên nhất được liệt kê đầu tiên. Thư mục apt-key list
0 cho phép bạn thêm các file Output
OK
9 riêng biệt vào.
Output
OK
apt-key list
Output
OK
apt-key list
Output
OK
Chạy lệnh sau, lệnh này sẽ tạo một file trong apt-key list
0 có tên apt-key list
5. Nội dung duy nhất trong file này là một dòng apt-key list
6 😱
apt-key list
apt-key list
apt-key list
Dòng này cho APT biết mọi thứ nó cần biết về nguồn của gói là gì và tìm gói đó ở đâu:
apt-key list
7: Ê mày máy tao kiến trúc Debian thông thường. Hoặc nếu kiến trúc Debian phân tán mã nguồn thì sửa thành apt-key list
8. apt-key list
9: Kiến trúc mà dữ liệu APT sẽ được tải xuống. Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
0: Vị trí có thể tìm thấy dữ liệu APT - nơi đặt kho lưu trữ MongoDB chính thức. Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
1: Kho Ubuntu có thể chứa một số bản phát hành khác nhau. Điều này chỉ rõ rằng bạn chỉ muốn phiên bản 4.4 của Output
OK
8 gói có sẵn cho phiên bản Ubuntu Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
3 [“Focal Fossa” là tên mã của Ubuntu 20.04]. Muốn biết máy bạn mã nào thì bấm Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
4 và update command theo. Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
5: Phần này trỏ APT đến một trong bốn kho lưu trữ chính của Ubuntu. Trong trường hợp này, nó trỏ đến kho Output
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key
. . .
5.