主服dbs添加次服dbs配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了主服dbs添加次服dbs配置相关的知识,希望对你有一定的参考价值。
#!-*- coding:utf-8 -*-
#/usr/bin/python
#
#参数4个: 平台名 区号(次服) 端口(主服) 域名(主服)
import sys
reload(sys) # reload 才能调用 setdefaultencoding 方法
sys.setdefaultencoding(‘utf-8‘) # 设置 ‘utf-8‘
import mysqldb
import houtai_dbname
import commands
import paramiko
def server_zoneid():
#result=" "
global conn,plname
try:
cur = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)
conn.select_db(‘h5_houtai‘)
sql= "SELECT ip,zoneid,gameport FROM serverinfo WHERE pf=\‘%s\‘ and zoneid = %s ;" % (plname,zoneid)
cur.execute(sql)
result=cur.fetchone()
domain=result.get(‘ip‘)
print domain
id=int(result.get(‘zoneid‘))
print id
#gport=result.get(‘gameport‘)
#print gport
#print hostname
user=‘root‘
pkey_file =‘/root/.ssh/id_rsa‘
key=paramiko.RSAKey.from_private_key_file(pkey_file)
cmd=‘echo "%s=jdbc:mysql://%s:3306/xmxy_bnxy_%s&jygsuser&jy_GAME89XOK23CM4KCMhhJSKb" >> /usr/jyserver/%s/server/config/dbs.properties‘ % (zoneid,domain,zoneid,port) #次数dbs配置写入主服目录dbs
s=paramiko.SSHClient() #调用paramiko模块下的sshclient()
s.load_system_host_keys() #加载本地的known_hosts文件,该文件是纪录连到对方时,对方给的 host key。每次连线时都会检查
i=s.load_system_host_keys()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
s.connect(hostname,22,user,pkey=key,timeout=5)
stdin,stdout,stderr=s.exec_command(cmd)
cmd_result=stdout.read(),stderr.read()
print cmd_result
#for line in cmd_result:
# print line
#print result
#for line in result:
#print (line,result[line])
#print " values: %s" % result.values()
cur.close()
conn.close()
except MySQLdb.Error,e:
#print "MySQLdb error %d:%s " % (e.args[0],e.args[1])
print e
if __name__=="__main__":
plname=sys.argv[1]
zoneid=sys.argv[2]
port=sys.argv[3]
hostname=sys.argv[4]
#with open ("/usr/jyserver/%s/server/config/dbs.properties" % str(port)) as f:
#print f.read().strip("")
conn=MySQLdb.connect(host=‘xxx‘,user=‘xxx‘,passwd=‘xxx‘,port=3306,charset=‘utf8‘)
server_zoneid()
以上是关于主服dbs添加次服dbs配置的主要内容,如果未能解决你的问题,请参考以下文章