#!-*- 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()