下面是我的python代码,它远程连接到mongodb主机并执行mongodb命令“db.serverStatus()。connections”。
以下脚本的预期输出是:
{
"current" : 43,
"available" : 51157,
"totalCreated" : NumberLong(3988)
}
但我没有得到任何输出.....
PYTHON CODE:
import pymongo
host = 'mongo_server.com'
port = 27018
db_name='test'
user='user'
passwrd='password'
def get_connection():
con=pymongo.Connection(host,port)
db=con[db_name]
try:
db.authenticate(user,passwrd)
print db.command("serverStatus")["connections"]
except:
return None
return db
get_connection()
答案 0 :(得分:0)
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
mongodb:// 是一个必需的前缀,用于标识这是标准连接格式的字符串。
用户名:密码@ 是可选的。如果给定,驱动程序将在连接到数据库服务器后尝试登录数据库。对于某些身份验证机制,只指定了用户名而密码不是,在这种情况下,":"用户名也被关闭后 host1是URI中唯一必需的部分。它标识要连接的服务器地址。
:portX 是可选的,如果没有提供,则默认为:27017。
/ database 是要登录的数据库的名称,因此仅在使用username:password @ syntax时才相关。如果没有指定" admin"默认情况下将使用数据库。
?选项是连接选项。请注意,如果数据库不存在,那么最后一个主机和?之间仍然需要/?介绍选项。选项是名称=值对,并且对由"&"分隔。为了向后兼容,";"除了"&"之外,它被接受为分隔符,但应被视为已弃用。