Nhận toàn quyền truy cập vào MongoDB. The Definitive Guide, 2nd Edition và hơn 60 nghìn đầu sách khác, với 10 ngày dùng thử miễn phí O'Reilly
Ngoài ra còn có các sự kiện trực tuyến trực tiếp, nội dung tương tác, tài liệu chuẩn bị chứng nhận, v.v.
Ghi chú. Bạn đang xem phiên bản 3. 3 của nút. tài liệu trình điều khiển js. Bấm vào đây để có phiên bản mới nhất
- hướng dẫn
- Kết nối với MongoDB
Kết nối với MongoDB
Sử dụng phương pháp client.connect để kết nối với triển khai MongoDB đang chạy
Kết nối với một trường hợp MongoDB duy nhất
Để kết nối với một phiên bản MongoDB, hãy chỉ định URI của phiên bản MongoDB để kết nối với
Trong ví dụ sau, chuỗi kết nối chỉ định các phiên bản
const MongoClient = require('mongodb').MongoClient; const assert = require('assert'); // Connection URL const url = 'mongodb://localhost:27017,localhost:27018/?replicaSet=foo'; // Database Name const dbName = 'myproject'; // Create a new MongoClient const client = new MongoClient(url); // Use connect method to connect to the Server client.connect(function(err) { assert.equal(null, err); console.log("Connected correctly to server"); const db = client.db(dbName); client.close(); });
1 chạy trên
const MongoClient = require('mongodb').MongoClient; const assert = require('assert'); // Connection URL const url = 'mongodb://localhost:27017,localhost:27018/?replicaSet=foo'; // Database Name const dbName = 'myproject'; // Create a new MongoClient const client = new MongoClient(url); // Use connect method to connect to the Server client.connect(function(err) { assert.equal(null, err); console.log("Connected correctly to server"); const db = client.db(dbName); client.close(); });
3 và
const MongoClient = require('mongodb').MongoClient; const assert = require('assert'); // Connection URL const url = 'mongodb://localhost:27017,localhost:27018/?replicaSet=foo'; // Database Name const dbName = 'myproject'; // Create a new MongoClient const client = new MongoClient(url); // Use connect method to connect to the Server client.connect(function(err) { assert.equal(null, err); console.log("Connected correctly to server"); const db = client.db(dbName); client.close(); });
4
Trong các trường hợp sau, bạn có thể truy cập phiên bản DDS từ Internet bằng cách liên kết EIP với phiên bản
cảnh 1. Các ứng dụng của bạn được triển khai trên ECS và không ở cùng khu vực với phiên bản DDS
Hình 1 Truy cập DDS từ ECS giữa các khu vực
kịch bản 2. Các ứng dụng của bạn được triển khai trên máy chủ đám mây do các nhà cung cấp khác cung cấp
Hình 2 Truy cập DDS từ các máy chủ đám mây khác
Phần này mô tả cách sử dụng Mongo Shell để kết nối với một phiên bản bộ bản sao thông qua EIP
Bạn có thể kết nối với một phiên bản bằng kết nối SSL hoặc kết nối không được mã hóa. Kết nối SSL được mã hóa và an toàn hơn. Để cải thiện bảo mật truyền dữ liệu, hãy kết nối với các phiên bản bằng SSL
điều kiện tiên quyết
- Để biết chi tiết về cách tạo và đăng nhập vào ECS, hãy xem Mua ECS và Đăng nhập vào ECS
- Liên kết EIP với phiên bản bộ bản sao và định cấu hình quy tắc nhóm bảo mật để đảm bảo rằng phiên bản bộ bản sao có thể được truy cập từ ECS
- Cài đặt ứng dụng khách MongoDB trên ECS
Để biết chi tiết về cách cài đặt ứng dụng khách MongoDB, hãy xem Làm cách nào tôi có thể cài đặt ứng dụng khách MongoDB?
Phiên bản của ứng dụng khách MongoDB đã cài đặt phải giống với phiên bản phiên bản
Kết nối SSL
Nếu bạn kết nối với một phiên bản qua kết nối SSL, trước tiên hãy bật SSL. Nếu không, một lỗi được báo cáo. Để biết chi tiết về cách bật SSL, hãy xem Bật và Tắt SSL
- Đăng nhập vào bảng điều khiển quản lý
- Nhấp vào
ở góc trên bên trái và chọn khu vực và dự án.
- Nhấp vào
ở góc trên bên trái của trang và chọn Cơ sở dữ liệu > Dịch vụ cơ sở dữ liệu tài liệu.
- Trên trang Phiên bản, nhấp vào tên phiên bản
- Trong ngăn điều hướng bên trái, chọn Kết nối
- Trong vùng Thông tin cơ bản, hãy nhấp vào
bên cạnh trường SSL.
- Tải chứng chỉ gốc lên ECS để kết nối với phiên bản
Phần sau đây mô tả cách tải chứng chỉ lên Linux và Window ECS
- Trong Linux, hãy chạy lệnh sau
scp@
- IDENTITY_FILE là thư mục chứa chứng chỉ gốc. Quyền truy cập tệp là 600
- REMOTE_USER là người dùng hệ điều hành ECS
- REMOTE_ADDRESS là địa chỉ ECS
- REMOTE_DIR là thư mục của ECS mà chứng chỉ gốc được tải lên
- Trong Windows, tải chứng chỉ gốc lên bằng công cụ kết nối từ xa
- Kết nối với phiên bản trong thư mục chứa ứng dụng khách MongoDB
Phương pháp 1. Sử dụng địa chỉ kết nối mạng công cộng
lệnh ví dụ
./mongo "" --ssl --sslCAFile --sslAllowInvalidHostnames
Mô tả về Thông Số
- Địa chỉ kết nối mạng công cộng. Trên trang Phiên bản, nhấp vào phiên bản để chuyển sang trang Thông tin cơ bản. Trong ngăn điều hướng bên trái, chọn Kết nối. Nhấp vào tab Kết nối công cộng và lấy địa chỉ kết nối mạng công cộng
Hình 3 Lấy địa chỉ kết nối mạng công cộng
Định dạng của địa chỉ kết nối công cộng như sau. Không thể thay đổi tên người dùng cơ sở dữ liệu rwuser và quản trị viên cơ sở dữ liệu xác thực
mongodb. //rwuser. @192. 168. xx. xx. 8635/test?authSource=admin
Hãy chú ý đến các thông số sau trong địa chỉ kết nối mạng công cộng
Bảng 1 Mô tả thông số
Tham số
Sự miêu tả
người dùng rwuser
Tên tài khoản, tức là tên người dùng cơ sở dữ liệu
Mật khẩu cho tài khoản cơ sở dữ liệu. Thay thế nó bằng mật khẩu thực tế
Nếu mật khẩu chứa dấu (@), dấu chấm than (. ) hoặc dấu phần trăm (%), thay thế chúng bằng mã URL thập lục phân (ASCII) %40, %21 và %25 tương ứng
Ví dụ: nếu mật khẩu là ****@ %***. , mã URL tương ứng là **** %40%25*** %21
192. 168. xx. xx. 8635
EIP và cổng được liên kết với nút của phiên bản bộ bản sao
authSource=quản trị viên
Cơ sở dữ liệu xác thực của người dùng rwuser phải là quản trị viên. authSource=admin đã được sửa trong lệnh
- FILE_PATH là đường dẫn lưu trữ chứng chỉ gốc
- --sslAllowInvalidHostname. Chứng chỉ bộ bản sao được tạo bằng địa chỉ IP quản lý nội bộ để đảm bảo rằng giao tiếp nội bộ không chiếm các tài nguyên như địa chỉ IP và băng thông của người dùng. --sslAllowInvalidHostnames là cần thiết cho kết nối SSL thông qua mạng công cộng
Ví dụ lệnh
/mongo "mongodb. //rwuser. @192. 168. xx. xx. 8635/test?authSource=admin" --ssl --sslCAFile/tmp/ca. crt --sslAllowInvalidHostnames
Phương pháp 2. Sử dụng EIP
lệnh ví dụ
./mongo --host --port -u -p --authenticationDatabaseadmin --ssl --sslCAFile --sslAllowInvalidHostnames
Mô tả về Thông Số
- DB_HOST là EIP được liên kết với nút cá thể được kết nối
Trên trang Phiên bản, nhấp vào phiên bản để chuyển đến trang Thông tin cơ bản. Chọn Kết nối> Kết nối công khai và lấy EIP của nút tương ứng
- DB_PORT là cổng cơ sở dữ liệu. Số cổng mặc định là 8635
Bạn có thể nhấp vào phiên bản để đến trang Thông tin cơ bản. Trong ngăn điều hướng bên trái, chọn Kết nối. Trên trang được hiển thị, nhấp vào tab Kết nối công cộng và lấy cổng từ trường Cổng cơ sở dữ liệu trong vùng Thông tin cơ bản
Bộ bản sao MongoDB hoạt động như thế nào?
Bộ bản sao là một nhóm các phiên bản mongod duy trì cùng một bộ dữ liệu . Một bộ bản sao chứa một số nút mang dữ liệu và tùy chọn một nút trọng tài. Trong số các nút mang dữ liệu, một và chỉ một thành viên được coi là nút chính, trong khi các nút khác được coi là nút phụ.
Làm cách nào để thêm nút vào bộ bản sao MongoDB?
Bắt đầu từ MongoDB 5. 0, các nút chỉ được định cấu hình bằng địa chỉ IP sẽ không xác thực khởi động và sẽ không khởi động. .
Bắt đầu phiên bản mongod mới. Chỉ định thư mục dữ liệu và tên bộ bản sao. .
Kết nối với bộ bản sao chính. .
Sử dụng rs. add() để thêm thành viên mới vào bộ bản sao
Làm cách nào để chạy bộ bản sao MongoDB trên Docker?
Thiết lập vùng chứa của chúng tôi . Bắt đầu một vùng chứa từ một hình ảnh. -p 30001. 27017. Hiển thị cổng 27017 trong vùng chứa của chúng tôi, dưới dạng cổng 30001 trên máy chủ cục bộ. --name mongo1. đặt tên cho vùng chứa này là “mongo1” --net my-mongo-cluster. Thêm vùng chứa này vào mạng “my-mongo-cluster”