与DB建立连接时出现问题

时间:2017-08-17 22:49:14

标签: python linux mongodb pymongo

平台:LINUX。

我是MongoDB和pymongo的初学者。安装pymongo后,这是我在ipython上尝试的一个简单测试:

import pymongo
client = pymongo.MongoClient();
# Also tried to specify the local host and port number
db = client['myDB']
collections = db['temptables']
collections.insert({'a':'1'})

此时,它窒息。并最终吐出“错误111:连接被拒绝”错误。所以,我尝试直接从终端调用MongoDB,我仍然得到下面的错误[看远端]。所以,我搜索了一下并尝试了:

  1. 删除锁(sudo rm /var/lib/mongodb/mongod.lock)。事实证明,首先没有锁定。

  2. sudo mongod --repair

  3. 我甚至看到了一个建议,即从配置文件中注释掉主机和端口号。试过这个也行不通。

  4. 以上都没有。

    这是我在尝试从命令行调用mongodb时看到的错误。

    017-08-17T15:25:30.265-0700 W NETWORK [thread1]无法连接到127.0.0.1:27017,在(检查套接字以查看轮询后的错误),原因:连接被拒绝 2017-08-17T15:25:30.265-0700 E QUERY [thread1]错误:无法连接到服务器127.0.0.1:27017,连接尝试失败: connect@src/mongo/shell/mongo.js:237:13 @(连接):1:6

    例外:连接失败

    请帮助。

1 个答案:

答案 0 :(得分:2)

你的mongo服务器没有运行。

您可以执行sudo ps -ef | grep mongod

确认

如果安装了mongo并且在路径中,则可以执行:

cd && mkdir -p ~/temp_mongo_db && mongod --dbpath=./temp_mongo_db

这将启动mongo并将所有数据库文件放在主目录下的' temp_mongo_db'。

最后,在新的终端窗口中,再次执行sudo ps -ef | grep mongod。你现在看到mongod正在运行。

如果要在生产中运行mongo,则应将其配置为由SystemD或其他一些init系统管理。