Chuỗi kết nối Mongodb nodejs

MongoDB là cơ sở dữ liệu dựa trên tài liệu NoSQL. Nó hỗ trợ các triển khai khác nhau cho các trường hợp sử dụng có tính sẵn sàng cao và khả năng mở rộng. Hướng dẫn này giới thiệu cho bạn cách kết nối Nút của bạn. js vào cơ sở dữ liệu MongoDB và cách đọc và ghi dữ liệu

Ở phần cuối của hướng dẫn này, bạn sẽ có thể tạo một Nút. js, thiết lập kết nối tới cơ sở dữ liệu MongoDB và đọc và ghi một số dữ liệu

  • Máy cục bộ của bạn với Node. js & npm đã cài đặt https. //nodejs. tổ chức/
  • Tạo một thư mục mới và khởi tạo một Node trống. dự án js với
    npm install mongodb
    npm install dotenv
    3
  • Một phiên bản MongoDB đang chạy với cấu hình TLS
node-with-mongodb/
├─ package.json
├─ .env
└─ mongodb.js

Mã nguồn đầy đủ được sử dụng trong hướng dẫn này có thể được tìm thấy trong kho git này

Trong hướng dẫn này, chúng tôi sẽ sử dụng Node chính thức. js MongoDB để kết nối với cơ sở dữ liệu của chúng tôi. Chúng tôi cũng sẽ sử dụng gói

npm install mongodb
npm install dotenv
4 để tải các biến môi trường được chỉ định trong tệp
npm install mongodb
npm install dotenv
5 khi tập lệnh được thực thi. Chúng có thể được cài đặt bằng npm

npm install mongodb
npm install dotenv

Tất cả các ví dụ mã sẽ là một phần của tệp

npm install mongodb
npm install dotenv
6 trong thư mục dự án

Biến môi trường. tập tin env

Tệp

npm install mongodb
npm install dotenv
5 sẽ chứa chuỗi kết nối URI. Điều này chứa người dùng, mật khẩu, địa chỉ máy chủ cũng như cơ sở dữ liệu và các tùy chọn kết nối bổ sung để kết nối với cơ sở dữ liệu MongoDB của bạn

MONGO_URI='mongo+srv://:@:/?'

Khi tệp

npm install mongodb
npm install dotenv
5 đã sẵn sàng, trong tập lệnh
npm install mongodb
npm install dotenv
6, chúng tôi có thể tải nội dung của tệp đó dưới dạng biến môi trường

node-with-mongodb/
├─ package.json
├─ .env
└─ mongodb.js
0

Điều này sẽ cho phép chúng tôi sử dụng

MONGO_URI='mongo+srv://:@:/?'
0 trong tập lệnh của mình

Kết nối với cơ sở dữ liệu với TLS

Kết nối với cơ sở dữ liệu của bạn bằng TLS mã hóa tất cả dữ liệu mạng giữa máy chủ MongoDB và máy khách của bạn. Điều này cũng giúp đảm bảo máy khách được kết nối với máy chủ dự định

nút. thư viện js MongoDB hỗ trợ cài đặt này. Cách đơn giản nhất để kết nối với cơ sở dữ liệu của bạn là sử dụng URI với tất cả dữ liệu cần thiết. người dùng, mật khẩu, cơ sở dữ liệu, máy chủ, cổng và các tùy chọn khác như bộ bản sao, TLS hoặc authSource

URI phải có máy chủ lưu trữ và tất cả thông tin đăng nhập cần thiết để kết nối với cơ sở dữ liệu. Trong trường hợp sử dụng TLS, có thể cung cấp thêm tham số

MONGO_URI='mongo+srv://:@:/?'
1 cho hàm tạo MongoClient

node-with-mongodb/
├─ package.json
├─ .env
└─ mongodb.js
3

Tuy nhiên, nếu bạn sử dụng một URI kết nối có tiền tố

MONGO_URI='mongo+srv://:@:/?'
2, tls sẽ tự động được bật, vì vậy có thể bỏ qua tùy chọn
MONGO_URI='mongo+srv://:@:/?'
1

Đoạn mã sau hiển thị cấu hình máy khách và kết nối với cơ sở dữ liệu. Nó cũng truy vấn thông tin cơ sở dữ liệu và in vai trò của nút MongoDB

node-with-mongodb/
├─ package.json
├─ .env
└─ mongodb.js
6

Bây giờ chúng tôi đã kết nối với cơ sở dữ liệu của mình, chúng tôi có thể tiến hành ghi và đọc dữ liệu

Để thực hiện việc này, chúng tôi phải sử dụng MongoClient mà chúng tôi đã tạo ở các bước trước và truy cập vào bộ sưu tập tài liệu có tên là 'phim'

node-with-mongodb/
├─ package.json
├─ .env
└─ mongodb.js
7

Nếu bộ sưu tập không tồn tại, nó sẽ được tạo tự động cho chúng tôi. Bước tiếp theo là thêm tài liệu vào bộ sưu tập

MONGO_URI='mongo+srv://:@:/?'
4

node-with-mongodb/
├─ package.json
├─ .env
└─ mongodb.js
9

MONGO_URI='mongo+srv://:@:/?'
5 là một ObjectId đại diện cho ID của tài liệu mới mà chúng tôi vừa chèn vào bộ sưu tập. Sau đó, chúng tôi có thể sử dụng cùng một ObjectId đó để truy vấn bộ sưu tập và tìm nạp tài liệu

npm install mongodb
npm install dotenv
1

Chúng tôi cũng có thể lấy số lượng tài liệu một phần của bộ sưu tập bằng cách gọi phương thức

MONGO_URI='mongo+srv://:@:/?'
6 như sau

npm install mongodb
npm install dotenv
3

Bây giờ chúng ta có thể sử dụng tập lệnh đầy đủ như sau, với tất cả logic được viết trong các bước trước. Điều này liên quan đến. Kết nối với cơ sở dữ liệu của chúng tôi bằng TLS;

Kịch bản đầy đủ sẽ như sau

npm install mongodb
npm install dotenv
0

Trong các trường hợp chứng chỉ do cơ sở dữ liệu MongoDB cung cấp không được cấp bởi cơ quan cấp chứng chỉ nổi tiếng, kết nối bằng TLS sẽ không thành công. Do đó, người dùng phải cung cấp cho cơ quan cấp chứng chỉ để xác minh chứng chỉ máy chủ. Điều này có thể được thực hiện thông qua tùy chọn

MONGO_URI='mongo+srv://:@:/?'
7 trên lớp
MONGO_URI='mongo+srv://:@:/?'
8

Đoạn mã sau đây cho biết cách cung cấp tổ chức phát hành chứng chỉ để kết nối với TLS với cơ sở dữ liệu MongoDB của bạn. Tệp được đọc từ đường dẫn được cung cấp cho phương thức

MONGO_URI='mongo+srv://:@:/?'
9

npm install mongodb
npm install dotenv
1

Sau đó, bạn có thể kết nối với cơ sở dữ liệu của mình như bình thường

npm install mongodb
npm install dotenv
2

Trong hướng dẫn cách thực hiện này, chúng tôi đã chỉ ra cách sử dụng Node. js để kết nối với phiên bản MongoDB và cách đọc và ghi dữ liệu. Mã nguồn đầy đủ được sử dụng trong hướng dẫn này có thể được tìm thấy trong kho git này

Trong bước đầu tiên, chúng tôi tạo một. env chứa chuỗi kết nối URI tới MongoDB. Các biến này sau đó được sử dụng để kết nối với một phiên bản MongoDB. Trong bước cuối cùng, chúng tôi đã chỉ ra cách đọc và ghi dữ liệu từ cơ sở dữ liệu của chúng tôi

Sử dụng Northflank để kết nối Node. js sang MongoDB miễn phí

Northflank cho phép bạn tạo cơ sở dữ liệu MongoDB và một Node. dịch vụ js trong vòng vài phút. Đăng ký tài khoản Northflank và tạo dự án miễn phí để bắt đầu

Bạn đã kết nối NodeJS với MongoDB như thế nào?

Để kết nối một Nút. js sang MongoDB, chúng ta phải sử dụng thư viện có tên là Mongoose . cầy mangut. kết nối ("mongodb. //máy chủ cục bộ. 27017/collectionName", { useNewUrlParser. đúng, sử dụngUnifiedTopology. đúng });

Chuỗi kết nối MongoDB là gì?

Chuỗi kết nối MongoDB được định nghĩa là định dạng kết nối để tham gia máy chủ cơ sở dữ liệu MongoDB , chúng tôi sử dụng tên người dùng, tên máy chủ, mật khẩu và tham số cổng . Không có chuỗi kết nối thì không kết nối được với máy chủ cơ sở dữ liệu, chúng ta cần có chuỗi kết nối để kết nối máy chủ cơ sở dữ liệu.

Tại sao MongoDB của tôi không kết nối?

Nếu bạn đã tạo người dùng và gặp sự cố khi xác thực, hãy thử cách sau. Kiểm tra xem bạn có đang sử dụng đúng tên người dùng và mật khẩu cho người dùng cơ sở dữ liệu của mình không và bạn có đang kết nối với đúng cơ sở triển khai cơ sở dữ liệu không . Kiểm tra xem bạn có đang chỉ định đúng cơ sở dữ liệu authSource trong chuỗi kết nối của mình không.

MongoDB kết nối với cơ sở dữ liệu giao diện người dùng như thế nào?

Bây giờ, chúng ta đã sẵn sàng để xem cách chúng ta có thể kết nối cơ sở dữ liệu MongoDB của mình với Nút này. js và máy chủ tốc hành mà chúng tôi đã thiết lập (FYI, ví dụ này sẽ bao gồm các tham số đường dẫn động). .
NHẬN yêu cầu tìm nạp tài nguyên từ máy chủ
Yêu cầu POST tạo tài nguyên trên máy chủ (cơ sở dữ liệu)
PUT yêu cầu cập nhật tài nguyên trên máy chủ