MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Kết nối cơ sở dữ liệu sao băng

Làm cách nào bạn có thể kết nối với MongoDB bằng Meteor?

Tình huống A:Sử dụng DB tích hợp làm mặc định

Điều này đơn giản hơn nhiều so với những gì bạn đã làm. Khi bạn chạy meteor bạn thực sự khởi động một DB với máy chủ Meteor, nơi Meteor lắng nghe trên cổng 3000 và cơ sở dữ liệu trên cổng 3001. Ứng dụng Meteor đã được kết nối với cơ sở dữ liệu này tại cổng 3001 và sử dụng một db có tên là meteor . Không cần phải quay lại MongoInternals.RemoteCollectionDriver . Chỉ cần xóa mã đó và thay đổi mọi thứ thành:

 Boxes = new Mongo.Collection("boxes"); // use default MongoDB connection

Tình huống B:Sử dụng DB khác làm mặc định

Sử dụng MONGO_URL biến môi trường, bạn có thể đặt chuỗi kết nối thành MongoDB khi khởi động máy chủ Meteor. Thay vì cơ sở dữ liệu cổng cục bộ 3001 hoặc kết nối chưa được xác thực, bạn có thể chỉ định chính xác vị trí và cách kết nối. Khởi động máy chủ Meteor của bạn như sau:

$ MONGO_URL=mongodb://user:[email protected]:27017/meteor meteor

Bạn cũng có thể bỏ qua người dùng user:[email protected] một phần của lệnh nếu không cần xác thực.

Tình huống C:Kết nối với DB thứ hai (thứ 3, v.v.) từ cùng một ứng dụng Meteor

Bây giờ chúng ta cần sử dụng MongoInternals.RemoteCollectionDriver . Nếu bạn muốn sử dụng một cơ sở dữ liệu khác không phải là DB mặc định được xác định khi khởi động máy chủ Meteor, bạn nên sử dụng phương pháp của mình.

var database = new MongoInternals.RemoteCollectionDriver('mongodb://user:[email protected]:27017/meteor');
var numberOfDocs = database.open('boxes').find().count();

Phần thưởng:Tại sao bạn không nên sử dụng MongoInternals với Mongo.Collection ?

Như tài liệu chỉ ra bạn không nên chuyển bất kỳ kết nối Mongo nào đến new Mongo.Collection() lệnh, nhưng chỉ một kết nối đến một phiên bản Meteor khác. Điều đó có nghĩa là, nếu bạn sử dụng DDP.connect để kết nối với một máy chủ khác, bạn có thể sử dụng mã của mình - nhưng bạn không nên kết hợp MongoInternals với Mongo.Collection - chúng không hoạt động tốt với nhau.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm thế nào để xử lý đúng cách di chuyển giản đồ mongoose?

  2. Mã lỗi đặt bản sao 76

  3. i18Next - NodeJS - Cách thay đổi bản dịch mà không cần tải lại máy chủ

  4. Lọc dữ liệu bằng cách sử dụng quần thể mongoose

  5. Cách để đi sâu qua một đối tượng Groovy với dấu chấm trong chuỗi bằng cách sử dụng GPath