相关疑难解决方法(0)

连接拒绝MongoDB错误111

我有一个Linode服务器运行Ubuntu 12.04 LTS和MongoDB实例(服务正在运行并且CAN本地连接),我无法从外部源连接.

我已将这两个规则添加到我的IP表中,其中<ip address>是我想要连接FROM的服务器(如本MongoDB参考中所述):

iptables -A INPUT -s < ip-address > -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -d < ip-address > -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

我看到我的IP表中的规则允许27017与<ip address>之间的连接,但是当我尝试使用如下命令从<ip address>连接到我的mongo数据库时:

mongo databasedomain/databasename -u username -p password

我收到此错误:

2014-07-22T23:54:03.093+0000 warning: Failed to connect to databaseserverip:27017, reason: errno:111 Connection refused 2014-07-22T23:54:03.094+0000 Error: couldn't connect to server < ip address >:27017 (databaseserverip), connection attempt failed at src/mongo/shell/mongo.js:148 exception: connect failed

任何帮助都非常赞赏!!!! …

linux firewall iptables mongodb

69
推荐指数
6
解决办法
18万
查看次数

无法启动mongod.service:找不到单位mongod.service

我按照mongodb安装文档中提到的所有步骤进行操作.

对于ubuntu 16.04

第1步:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
Run Code Online (Sandbox Code Playgroud)

第2步:

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
Run Code Online (Sandbox Code Playgroud)

第3步:

sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

第4步:

sudo apt-get install -y mongodb-org
Run Code Online (Sandbox Code Playgroud)

第5步:

sudo service mongod start
Run Code Online (Sandbox Code Playgroud)

当我开始mongodb得到一个错误

"Failed to start mongod.service: Unit mongod.service not found." please help me to solve this.
Run Code Online (Sandbox Code Playgroud)

ubuntu mongodb mongodb-query mean-stack

49
推荐指数
13
解决办法
9万
查看次数

pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Errno 8] nodename 或 servname 提供,或未知

pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Errno 8] nodename 或 servname 提供,或未知

当我尝试将数据插入 mongodb 时,出现错误。

mongodb 服务已经启动。

我不能只在 Safari 上打开 'localhost',可以在 Chrome 上打开它。(可以在两者上打开 '127.0.0.1')。

我的主机“127.0.0.1 本地主机”

dns localhost mongodb pymongo

5
推荐指数
1
解决办法
6132
查看次数

pymongo.errors.ServerSelectionTimeoutError:本地主机:27017:[Errno 111]连接被拒绝

我正在尝试将django-rest应用与docker-compose结合使用。当我自己运行它时,python manage.py runserver它运行良好。

如果我尝试使用docker-compose,sudo docker-compose up它也会运行服务器,但是当我在浏览器中打开页面时,会出现错误。

pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Errno 111] Connection refused
Run Code Online (Sandbox Code Playgroud)

我已经有了数据库,所以我只是在使用这行 settings.py

MONGODB_DATABASES = {
    "default": {
        "name": 'api',
        "host": 'localhost',
       "port": 27017
    },
}
Run Code Online (Sandbox Code Playgroud)

这是我的Dockerfile:

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY . /code
RUN pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

我的docker-compose.yml:

version: '3.0'
services:
  web:
    build: .
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
  mongo:
    image: mongo
Run Code Online (Sandbox Code Playgroud)

已经尝试过:

Pymongo在27017一直拒绝连接

python mongodb django-rest-framework docker docker-compose

5
推荐指数
1
解决办法
4595
查看次数

如何使用 pymongo 连接到 Docker 容器内的 Mongo?

我从 Docker 网站拉取了官方的 mongo 镜像,并启动了一个名为 .mongo 的容器dataiomongo

我现在想使用 pymongo 连接到容器内的 mongodb。

这是我写的python脚本:

from pprint import pprint
from pymongo import MongoClient

client = MongoClient('localhost', port=27017)

db = client.admin

server = db.command("serverStatus")
pprint(server)
Run Code Online (Sandbox Code Playgroud)

出现的错误是:

Traceback (most recent call last):
  File "D:/dataio/test_mongo.py", line 8, in <module>
    server = db.command("serverStatus")
  File "D:\dataio\venv\lib\site-packages\pymongo\database.py", line 655, in command
    read_preference) as (sock_info, slave_ok):
  File "C:\Python27\Lib\contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "D:\dataio\venv\lib\site-packages\pymongo\mongo_client.py", line 1135, in _socket_for_reads
    server = topology.select_server(read_preference)
  File "D:\dataio\venv\lib\site-packages\pymongo\topology.py", line 226, in …
Run Code Online (Sandbox Code Playgroud)

python mongodb docker

2
推荐指数
1
解决办法
4502
查看次数