簡體   English   中英

如何使用python本地連接到Mongo數據庫

[英]How to connect to Mongo database locally using python

我正在使用ipython 2.7。 我在mongodb中創建數據庫名稱enron。 我嘗試在本地連接到此數據庫,但發生以下錯誤 - 我該如何解決?

我的代碼:

import json
import pymongo  # pip install pymongo
from bson import json_util 
from pymongo import MongoClient# Comes with pymongo
conn = pymongo.Connection('mongodb://user:user123@localhost27017.mongolab.com:33499/enron')
client = MongoClient()

錯誤:

ConnectionFailure: could not connect to localhost:27017: [Errno 10061] No connection     could be made because the target machine actively refused it

以下是創建連接和查詢的命令

from pymongo import MongoClient
client = MongoClient('hostname', 27017)
db = client.database_name
collection = db.collection_name
collection.find_one({"name":"name1"})

請參閱此PyMongo連接以進行連接,並且不建議使用 Connection

from pymongo import MongoClient
from bson import json_util


MONGODB_HOST = 'localhost'
MONGODB_PORT = 27017
DB_NAME = 'Your DB name'
COLLECTION_NAME = 'collectionname'

@app.route("/")
def getDatas():
    connection = MongoClient(MONGODB_HOST, MONGODB_PORT)
    collection = connection[DB_NAME][COLLECTION_NAME]
    projects = collection.find()
    json_projects = []
    for project in projects:
        json_projects.append(project)
    json_projects = json.dumps(json_projects, default=json_util.default)
    connection.close()
    return json_projects

if __name__ == "__main__":
    app.run(host='0.0.0.0',port=5000,debug=True)

從mongo installtion目錄中的命令行運行此命令。

......>蒙戈> ...>箱>

mongod --dbpath data / db(這里data / db是你的數據庫的路徑)

#!pip install pymysql

import pymysql

pymysql.install_as_MySQLdb()

import MySQLdb

#!pip install pymongo
import pymongo
import json
from pymongo import MongoClient


import pandas as pd
from pymongo import MongoClient
# if __name__ == '__main__':
#     client = MongoClient("localhost", 27017, maxPoolSize=50)
client = MongoClient("localhost", 27017, maxPoolSize=50)
db = client.mydb
collection = db.angel
data = pd.DataFrame(list(collection.find()))

data

'''
Address City    Name    State   ZIP _id
0   123 Main St Whereverville   Jane Doe    CA  90210   5af03bfa8ca570abf4a2f76c
1   555 Broadway Ave    New York    John Doe    NY  10010   5af03bfa8ca570abf4a2f76d
'''

上面的@amit的推導,我使用它來快速測試mongodb連接:

# pip install pymongo
from pymongo import MongoClient
client = MongoClient('mongodb://user:password@host:port/database')

for db in client.list_databases():
    print(db)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM