【Python】pymongo链接mongo
1.链接单实例mongo
# -*- coding:utf-8 -*-
import datetime
import pymongo
import time
client = pymongo.MongoClient("127.0.0.1", 27017)
db = client.get_database("collection")
db.authenticate('collection', '78hRdJEnJcHRb4qA')
#print(db.collection_names())
redefine_collection = db.get_collection('redefine-collection')
alluser=[]
demos = redefine_collection.find({'event_id': '0109001','event_info.url':{'$exists':'true'} ,"ctime": {"$gte":1525881600000}},no_cursor_timeout=True)
for item in demos:
if len(item['event_info']['url'].replace(r'/','').split('.')[-1])<=5:
alluser.append(item['event_info']['url'].replace(r'/','').split('.')[-1])
demos.close()
print len(alluser)
from pymongo import MongoClient
conn = MongoClient(['192.168.3.11:27017', '192.168.3.12:27017', '192.168.3.13:27017'],replicaset='shard1')
from pymongo import ReadPreference
db = conn.get_database('hnrtest', read_preference=ReadPreference.SECONDARY_PREFERRED)
3.mongo常见操作
######readclient#client=pymongo.MongoReplicaSetClient(['172.31.46.25:27017,172.31.43.36:27017,172.31.40.242:27017'],replicaset='shard1')#db=client.get_database("collection")#db.authenticate('collection','78hRdJEnJcHRb4qA')##printdb.client.read_preference#printdb.client.primary#printdb.client.secondaries#printdb.client.arbiters#printdb.command('ismaster')#####readclientclient=pymongo.MongoClient(['172.31.32.223:20000'])db=client.get_database("admin")db.authenticate('admin','ggxP6tPI971K3W0r')#printdb.client.read_preference#printdb.client.primary#printdb.client.secondaries#printdb.client.arbiters#printdb.client.is_primary#printdb.command('ismaster')#printdb.command('currentOp')#printdb.command('replSetGetStatus')#printdb.list_collection_names()statement=client.collection.get_collection('statement')###获取对应db下的对应集合printstatement.count()#client.collection.add_user('newTestUser','Test123',roles=[{'role':'readWrite','db':'collection'}])####添加用户#client.collection.remove_user('newTestUser')####删除用户db2=client.get_database("collection")db2.add_user('newTestUser','Test123',roles=[{'role':'readWrite','db':'collection'}])###添加用户printdb.current_op()#options={'lock':True}#db.client.fsync(**options)#printdb.client.is_locked######printdb.command('fsyncUnlock')#printdb.client.is_locked
参考:http://blog.51cto.com/hnr520/1874506
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。