Hướng dẫn start mongodb linux - bắt đầu mongodb linux

Trong thế giới các ứng dụng công nghệ thông tin có hơn chục hệ quản trị cơ sở dữ liệu được sử dụng phổ biến. Trước hết phổ biến và thường gặp nhất là MySQL - là hệ quản trị cơ sở dữ liệu mã nguồn mở có tốc độ cao, ổn định và dễ sử dụng, hoạt động tương thích trên nhiều hệ điều hành. Vì có tính bảo mật cao nên thích hợp cho các ứng dụng sử dụng truy cập internet. Song song đó còn những hệ quản trị cơ sở dữ liệu khác với những khả năng, độ ứng dụng khác nhau. Hôm nay trong bài viết này sẽ giới thiệu đến bạn đọc một hệ quản trị CSDL NoSQL là MongoDB.

MongoDB là gì?

MongoDB là một cơ sở dữ liệu nguồn mở, sử dụng mô hình dữ liệu hướng tài liệu và là một ngôn ngữ truy vấn không có cấu trúc. MongoDB lưu trữ dữ liệu theo hướng tài liệu (document), các dữ liệu được lưu trữ trong document kiểu JSON nên truy vấn sẽ rất nhanh. Mô hình dữ liệu của MongoDB là một mô hình có độ đàn hồi cao cho phép bạn kết hợp và lưu trữ dữ liệu của các kiểu đa biến mà không phải thỏa hiệp với các tùy chọn lập chỉ mục mạnh mẽ, truy cập dữ liệu và quy tắc xác thực.

Cài đặt Mongodb Ubuntu 18.04

Bước 1: Import “MongoDB public GPG Key”

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -

  1. Cài đặt gnupg

    sudo apt-get install gnupg

  2. Sau khi cài đặt gnupg, import lại key

    wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -

Bước 2: Tạo list file MongoDB

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list

chú ý: Để biết phiên bản Ubuntu bạn đang sử dụng là gì thì hay chạy lệnh:

lsb_release -dc

Bước 3: Cập nhật lại packages

sudo apt-get update

Bước 4: Cài đặt MongoDB packages

sudo apt-get install -y mongodb-org

Để tránh cơ chế tự động nâng cấp các gói mới hơn của apt-get, chúng ta có thể pin packages ở biên bản hiện tại đang cài đặt. echo "mongodb-org hold" | sudo dpkg --set-selections echo "mongodb-org-server hold" | sudo dpkg --set-selections echo "mongodb-org-shell hold" | sudo dpkg --set-selections sudo apt-get install gnupg0 sudo apt-get install gnupg1
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
sudo apt-get install gnupg0
sudo apt-get install gnupg1

Kiểm tra MongoDB đã cài đặt thành công chưa

sudo apt-get install gnupg2

Có output sau:

sudo apt-get install gnupg3 sudo apt-get install gnupg4 sudo apt-get install gnupg5 sudo apt-get install gnupg6 sudo apt-get install gnupg7
sudo apt-get install gnupg4
sudo apt-get install gnupg5
sudo apt-get install gnupg6
sudo apt-get install gnupg7

Khởi động MongoDB

sudo apt-get install gnupg8

Có output sau:

sudo apt-get install gnupg3 sudo apt-get install gnupg4 sudo apt-get install gnupg5 sudo apt-get install gnupg6 sudo apt-get install gnupg7
sudo apt-get install gnupg4
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -1
sudo apt-get install gnupg6
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -3
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -4
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -5
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -7
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -8

Khởi động MongoDB

sudo apt-get install gnupg8

Có output sau:

sudo apt-get install gnupg3 sudo apt-get install gnupg4 sudo apt-get install gnupg5 sudo apt-get install gnupg6 sudo apt-get install gnupg7
sudo apt-get install gnupg4
sudo apt-get install gnupg5
sudo apt-get install gnupg6
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list5
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list6
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list7

Khởi động MongoDB

sudo apt-get install gnupg8

sudo apt-get install gnupg3 sudo apt-get install gnupg4 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -1 sudo apt-get install gnupg6 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -3 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -4 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -5 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -7 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -8

Tắt MongoDB

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -9

sudo apt-get install gnupg3 sudo apt-get install gnupg4 sudo apt-get install gnupg5 sudo apt-get install gnupg6 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list5 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list6 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list7

Restart MongoDB
Chúng ta sử dụng lệnh:

Bạn cũng có thể restart nó như những service khác.

Có output sau:

sudo apt-get install gnupg3 sudo apt-get install gnupg4 sudo apt-get install gnupg5 sudo apt-get install gnupg6 sudo apt-get install gnupg7
lsb_release -dc1
lsb_release -dc2
lsb_release -dc3
lsb_release -dc4
lsb_release -dc5
lsb_release -dc6
lsb_release -dc7
lsb_release -dc8
lsb_release -dc9
sudo apt-get update0
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6
sudo apt-get update2

Khởi động MongoDB

sudo apt-get install gnupg8

sudo apt-get install gnupg3 sudo apt-get install gnupg4 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -1 sudo apt-get install gnupg6 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -3 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -4 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -5 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -7 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -8

Tắt MongoDB

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -9
sudo apt-get update6

sudo apt-get install gnupg3 sudo apt-get install gnupg4 sudo apt-get install gnupg5 sudo apt-get install gnupg6 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list5 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list6 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list7

Restart MongoDB

Bạn cũng có thể restart nó như những service khác.

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list8

Sử dụng MongoDB cơ bản

Tạo một Database mới

Di chuyển vào vùng console MongoDB.

Khi mongoDB ở trạng thái active. Chúng ta sử dụng lệnh:
sudo apt-get install -y mongodb-org1
sudo apt-get install -y mongodb-org2
sudo apt-get install -y mongodb-org3

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list9

lsb_release -dc0 lsb_release -dc1 lsb_release -dc2 lsb_release -dc3 lsb_release -dc4 lsb_release -dc5 lsb_release -dc6 lsb_release -dc7 lsb_release -dc8 lsb_release -dc9 sudo apt-get update0 wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -6 sudo apt-get update2
Hàm db.createUser, như mọi hàm khác trong MongoDB nhận tham số trong JSON. Hàm này cần định tên, mật khẩu, database và quyền của nó.
Để set quyền cho user truy cập vào database đã tạo. Ta có thể tạo một new_user vào database testlocal có roles là readWrite trên db này thì câu lệnh như sau:

Tạo Database
sudo apt-get install -y mongodb-org5
sudo apt-get install -y mongodb-org6
sudo apt-get install -y mongodb-org7
sudo apt-get install -y mongodb-org8
sudo apt-get install -y mongodb-org9
echo "mongodb-org hold" | sudo dpkg --set-selections0

sudo apt-get update3

Ví dụ : sudo apt-get update4
echo "mongodb-org hold" | sudo dpkg --set-selections2
echo "mongodb-org hold" | sudo dpkg --set-selections3
sudo apt-get install -y mongodb-org5
echo "mongodb-org hold" | sudo dpkg --set-selections5
echo "mongodb-org hold" | sudo dpkg --set-selections6
sudo apt-get install -y mongodb-org9
echo "mongodb-org hold" | sudo dpkg --set-selections8
sudo apt-get install -y mongodb-org9

Check db đang chạy hiện tại :

sudo apt-get update5 sudo apt-get update6

Insert record vào db mới tạo.

sudo apt-get update7

Output insert thành công :

sudo apt-get update8

Hiển thị tất cả database, tuy nhiên lệnh này chỉ hiển thị mặc định của mongo và những database mình tạo đã có dữ liệu. Ta sử dụng lệnh.
echo "mongodb-org-server hold" | sudo dpkg --set-selections3
echo "mongodb-org-server hold" | sudo dpkg --set-selections4
echo "mongodb-org hold" | sudo dpkg --set-selections2
echo "mongodb-org-server hold" | sudo dpkg --set-selections6
echo "mongodb-org hold" | sudo dpkg --set-selections3
sudo apt-get install -y mongodb-org5
echo "mongodb-org hold" | sudo dpkg --set-selections5
echo "mongodb-org hold" | sudo dpkg --set-selections6
sudo apt-get install -y mongodb-org9
echo "mongodb-org-shell hold" | sudo dpkg --set-selections2
echo "mongodb-org-shell hold" | sudo dpkg --set-selections3
echo "mongodb-org-shell hold" | sudo dpkg --set-selections4
echo "mongodb-org-shell hold" | sudo dpkg --set-selections5
echo "mongodb-org hold" | sudo dpkg --set-selections8
sudo apt-get install -y mongodb-org9

sudo apt-get update9

echo "mongodb-org-shell hold" | sudo dpkg --set-selections8

Output như sau:

sudo apt-get install -y mongodb-org0 sudo apt-get install -y mongodb-org1 sudo apt-get install -y mongodb-org2 sudo apt-get install -y mongodb-org3

Tạo một user mới

sudo apt-get install gnupg00

Mặc định, MongoDB không có tài khoản administrator mặc định. Thay vào đó nó tạo từng user khác cho mỗi database. Tuy nhiên, bạn cũng cần tạo user với phân quyền nhất định cho từng database. Hàm db.createUser, như mọi hàm khác trong MongoDB nhận tham số trong JSON. Hàm này cần định tên, mật khẩu, database và quyền của nó. Để set quyền cho user truy cập vào database đã tạo. Ta có thể tạo một new_user vào database testlocal có roles là readWrite trên db này thì câu lệnh như sau:

sudo apt-get install gnupg01

sudo apt-get install -y mongodb-org4 sudo apt-get install -y mongodb-org5 sudo apt-get install -y mongodb-org6 sudo apt-get install -y mongodb-org7 sudo apt-get install -y mongodb-org8 sudo apt-get install -y mongodb-org9 echo "mongodb-org hold" | sudo dpkg --set-selections0

Tạo user mới thành công, ta có output sau: