gpt4 book ai didi

mongodb - 无法通过 meteor 应用程序连接远程 Mongo DB

转载 作者:可可西里 更新时间:2023-11-01 10:03:55 25 4
gpt4 key购买 nike

我正在尝试使用 js 文件中的以下代码从我机器上的 meteor 应用程序连接远程数据库:

if(Meteor.isServer){
Meteor.startup(function () {
var myDatabase = new MongoInternals.RemoteCollectionDriver("http://172.22.77.134:27017");
MyCollection = new Mongo.Collection("euro2012", { _driver: myDatabase });
});
}

抛出以下错误:

Error: EACCES, unlink '/home/garima/my_cool_app/.meteor/local/build-garbage-e7yeel/README' at Object.Future.wait (/home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/dev_bundle/lib/node_modules/fibers/future.js:326:15) at Object.wrapper [as unlink] (/home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/tools/files.js:1124:24) at Object.files.rm_recursive (/home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/tools/files.js:262:13) at /home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/tools/files.js:258:15 at Array.forEach (native) at Function..each..forEach (/home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/dev_bundle/lib/node_modules/underscore/underscore.js:79:11) at Object.files.rm_recursive (/home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/tools/files.js:256:9) at Object.files.renameDirAlmostAtomically (/home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/tools/files.js:690:11)

使用 sudo 后出现以下错误:

(STDERR) W20150225-14:20:26.847(5.5)? (STDERR) /home/garima/.meteor/packages/meteor-tool/.1.0.40.1ef5dzv++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:173 W20150225-14:20:26.847(5.5)? (STDERR) throw(ex); W20150225-14:20:26.848(5.5)? (STDERR) ^ W20150225-14:20:26.891(5.5)? (STDERR) Error: URL must be in the format mongodb://user:pass@host:port/dbname W20150225-14:20:26.891(5.5)? (STDERR) at Error () W20150225-14:20:26.891(5.5)? (STDERR) at exports.parse (/home/garima/.meteor/packages/mongo/.1.0.11.pnwx20++os+web.browser+web.cordova/npm/node_modules/mongodb/lib/mongodb/connection/url_parser.js:15:11) W20150225-14:20:26.891(5.5)? (STDERR) at Function.MongoClient.connect (/home/garima/.meteor/packages/mongo/.1.0.11.pnwx20++os+web.browser+web.cordova/npm/node_modules/mongodb/lib/mongodb/mongo_client.js:164:16) W20150225-14:20:26.891(5.5)? (STDERR) at Function.Db.connect (/home/garima/.meteor/packages/mongo/.1.0.11.pnwx20++os+web.browser+web.cordova/npm/node_modules/mongodb/lib/mongodb/db.js:2035:23) W20150225-14:20:26.891(5.5)? (STDERR) at new MongoConnection (packages/mongo/mongo_driver.js:151:1) W20150225-14:20:26.892(5.5)? (STDERR) at new MongoInternals.RemoteCollectionDriver (packages/mongo/remote_collection_driver.js:4:1) W20150225-14:20:26.892(5.5)? (STDERR) at app/my_cool_app.js:26:25 W20150225-14:20:26.892(5.5)? (STDERR) at /home/garima/my_cool_app/.meteor/local/build/programs/server/boot.js:212:5

最佳答案

您有不止一个问题。停止您的应用程序运行的错误是由于您运行您的应用程序时权限不足造成的。也许你用 sudo 运行过一次?

要解决此问题,只需确保您有权访问项目中的所有文件即可。

另一个是您在定义 new MongoInternals.RemoteCollectionDriver 时使用的是 http url 而不是 mongo url。 Mongo URI 看起来像这样

mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

The full docs on the uri can be found here

使用此 URI 格式而不是 http 格式来解决此问题(与权限问题无关)。

关于mongodb - 无法通过 meteor 应用程序连接远程 Mongo DB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28712448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com