AdditionTask.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:dcmha 作者: wwwbjqcom 项目源码 文件源码
def Change(self, region, host_content):
        repluser, replpassword, ssl_ca, ssl_cert, ssl_key = GetConf().GetReplAcount(rg=True)
        master_host, master_port = host_content['host'], int(host_content['port'])
        if host_content['ssl']:
            sql = 'change master to master_host="%s",master_port=%d,master_user="%s",master_password="%s",master_ssl=1,' \
                  'master_ssl_ca="%s",' \
                  'master_ssl_cert="%s",master_ssl_key="%s",master_auto_position=1 for channel "%s" ' % (
                  master_host, master_port,
                  repluser, replpassword, ssl_ca,
                  ssl_cert, ssl_key, region)
        else:
            sql = 'change master to master_host="%s",master_port=%d,master_user="%s",master_password="%s",' \
                  'master_auto_position=1 for channel "%s" ' % (master_host, master_port,
                                                                repluser, replpassword, region)
        with closing(self.conn.cursor()) as cur:
            try:
                cur.execute('stop slave for channel "%s"' % region)
                cur.execute('reset slave for channel "%s"' % region)
            except:
                pass
            try:
                cur.execute(sql)
                self.__set_group_region(region,host_content)
            except MySQLdb.Warning,e:
                logging.error(traceback.format_exc())
                cur.execute('start slave;')
                self.__set_group_region(region, host_content)
            except MySQLdb.Error,e:
                logging.error(traceback.format_exc())
                logging.error('addition task for %s failed,master to %s in region %s ! ! !' % (self.host, host_content['host'], region))
                return False
            return True
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号