Bài viết này sẽ hướng dẫn bạn cách Cài Đặt Và Cấu Hình MongoDB Với Centos7. Nếu cần hỗ trợ, vui lòng liên hệ VinaHost qua Hotline 1900 6046 ext. 3, email về support@vinahost. vn hoặc chat với VinaHost qua livechat https. //trò chuyện trực tiếp. vinahost. vn/chat. php
1. Giới thiệu về MongoDB với Centos7
MongoDB là cơ sở dữ liệu NoSQL với các ưu điểm như. hiệu suất cao, tính khả dụng cao, tự động mở rộng quy mô
Cơ sở dữ liệu NoSQL nghĩa là không hỗ trợ SQL (Ngôn ngữ truy vấn có cấu trúc)
MongoDB không lưu trữ dữ liệu trong bảng định dạng, thay vào đó, nó lưu dữ liệu trong một cấu trúc giống JSON (mà MongoDB gọi là BSON)
Được giới thiệu vào năm 2009. Hiện tại vẫn đang được phát triển theo công ty MongoDB Inc
2. Yêu cầu cần thiết để cài đặt MongoDB với Centos7
- VPS cài đặt hệ điều hành Centos 7
- Truy cập SSH với quyền root
3. Các bước cài đặt MongoDB với Centos7
- Thêm kho lưu trữ MongoDB
- Cài đặt MongoDB
- Sửa một số lỗi MongoDB
- Kiểm tra phiên bản và định vị tệp nhật ký
- Tạo người dùng quản trị viên
- Kích hoạt kiểm tra và xác thực MongoDB
Bước 1. Thêm kho lưu trữ MongoDB
Truy cập vào VPS Centos 7 bằng ssh tài khoản root
➜ ~ ssh root@192. 168. 20. 125 #IP sẽ thay đổi tùy chọn bên cung cấp VPS
Tạo tệp repo mới
[root@localhost ~]# vi /etc/yum.repos.d/mongodb-org-3.2.repoDán nội dung sau vào kho lưu trữ tệp MongoDB
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.ascLưu tệp và thoát khỏi trình chỉnh sửa Vim
Bước 2. Cài đặt MongoDB với Centos7
Ở bước đầu chúng ta đã hoàn tất việc thêm kho lưu trữ MongoDB với Centos7. Thực hiện danh sách repo list trên Centos 7 bằng lệnh sau để kiểm tra
[root@localhost ~]# yum repolist | grep -i mongodb mongodb-org-3.2/7 MongoDB Repository 115Tiếp theo, cài đặt MongoDB bằng lệnh yum
[root@localhost ~]# yum -y install mongodb-orgKhi đã cài đặt hoàn tất, hãy thực hiện khởi động MongoDB bằng lệnh uph systemctl
[root@localhost ~]# systemctl start mongodKiểm tra MongoDB đang chạy bằng câu lệnh show socket after
[root@localhost ~]# ss -lntp | grep mongodLISTEN 0 128 127.0.0.1:27017 *:* users:(("mongod",pid=2419,fd=6))Hoặc bằng lệnh systemctl command
[root@localhost ~]# systemctl status mongod- ________số 8_______
Bước 3. Sửa một số lỗi MongoDB
Hiện tại MongoDB đã được cài đặt hoàn tất. Chúng ta có thể truy cập mongodb shell bằng câu lệnh $ mongo
Người dùng có thể bắt gặp lỗi dòng thông báo sau
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc1Để xử lý dòng thông báo sau, chúng ta cần tăng giá trị cấu hình ulimit cho người dùng mongod, truy cập vào tệp sau
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc2And more internal dung after into the end file
…
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc3Chạy lệnh sysctl và khởi động lại mongod để áp dụng thay đổi cho hệ thống
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc4Sau khi hoàn tất. Khi truy cập shell mongod sẽ không còn thông báo lỗi nữa
Bước 4. Kiểm tra phiên bản và định vị tệp nhật ký
Check version Mongodb
[root@localhost ~]# mongodb –version
phiên bản db v3. 2. 22
phiên bản git. 105acca0d443f9a47c1a5bd608fd7133840a58dd
Phiên bản OpenSSL. OpenSSL 1. 0. 1e-fips 11 Th02 2013
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc5Kiểm tra tệp nhật ký định vị
– Trong quá trình sử dụng, Admin cần xem trạng thái cũng như các lỗi xảy ra với mongodb, vì vậy việc đọc file log rất cần thiết
– Tệp nhật ký có vị trí. /var/log/mongodb/mongod. đăng nhập
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc6Bước 5. Tạo người dùng quản trị viên
Ở phần này, chúng ta sẽ tạo một user mới “VINAHOST” cho mongoDB và gán cho role “UserAdminAnyDatabase”
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc7Thực hiện truy vấn MongoDB với Centos7 bằng câu lệnh sau để tạo người dùng mới Quản trị viên
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc8Trên đây là cách khởi tạo 1 user MongoDB Administrator mới
Bước 6. Kích hoạt kiểm tra và xác thực MongoDB
Ở bước này, chúng ta cần phải bật tính năng xác thực cho người dùng để ngăn người dùng không có đủ quyền (đặc quyền) có thể truy cập và đọc cơ sở dữ liệu được
Truy cập vào tệp sau và thực hiện chỉnh sửa như mô tả
[mongodb-org-3.2] name=MongoDB Repository baseurl=//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=//www.mongodb.org/static/pgp/server-3.2.asc9tìm dòng
[root@localhost ~]# yum repolist | grep -i mongodb mongodb-org-3.2/7 MongoDB Repository 1150chỉnh sửa như bên dưới
[root@localhost ~]# yum repolist | grep -i mongodb mongodb-org-3.2/7 MongoDB Repository 1151Lưu tệp mongod lại và thực hiện khởi động lại daemon và mongod
[root@localhost ~]# yum repolist | grep -i mongodb mongodb-org-3.2/7 MongoDB Repository 1152Kiểm tra lại, thực hiện truy cập vào shell mongodb và thực hiện lệnh hiển thị người dùng VINAHOST
[root@localhost ~]# yum repolist | grep -i mongodb mongodb-org-3.2/7 MongoDB Repository 1153Bạn sẽ thấy hệ thống sẽ thông báo lỗi về lỗi không được cấp quyền thực thi lệnh trên VINAHOST (người dùng VINAHOST chưa có quyền thực thi lệnh)
Chúng ta cần khai báo user và password cho MongoDB With Centos7như sau để user VINAHOST có quyền truy cập và xem cơ sở dữ liệu. Như hình là thành công