From 0b0fd8ea6782b0df5ec819c9fbbdc2632bd4279e Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:25:48 +0800 Subject: [PATCH 01/16] Update index.py --- plugins/mysql/index.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index b9e1eb6d7..19d08ab4d 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -2988,7 +2988,12 @@ def setSlaveStatus(version=''): mode = mw.readFile(mode_file) pdb = pMysqlDb() - dlist = pdb.query('show slave status') + + cmd = 'show slave status' + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + cmd = 'show replica status' + dlist = pdb.query(cmd) if len(dlist) == 0: return mw.returnJson(False, '需要手动添加同步账户或者执行初始化!') From 4863ff2a198517b8128055877d1665a261a539f8 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:32:59 +0800 Subject: [PATCH 02/16] update --- plugins/mysql/index.py | 8 ++++---- plugins/mysql/install.sh | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 19d08ab4d..25e89adf5 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -2989,20 +2989,20 @@ def setSlaveStatus(version=''): mode = mw.readFile(mode_file) pdb = pMysqlDb() - cmd = 'show slave status' + slave_name = 'slave' mdb8 = getMdb8Ver() if mw.inArray(mdb8, version): - cmd = 'show replica status' + slave_name = 'replica' + cmd = 'show '+slave_name+' status' dlist = pdb.query(cmd) if len(dlist) == 0: return mw.returnJson(False, '需要手动添加同步账户或者执行初始化!') for v in dlist: connection_name = '' - cmd = "slave" if 'Channel_Name' in v: ch_name = v['Channel_Name'] - cmd = "slave for channel '{}'".format(ch_name) + cmd = slave_name + " for channel '{}'".format(ch_name) if (v["Slave_IO_Running"] == 'Yes' or v["Slave_SQL_Running"] == 'Yes'): pdb.query("stop {}".format(cmd)) diff --git a/plugins/mysql/install.sh b/plugins/mysql/install.sh index 586fa7f88..a47836f3a 100755 --- a/plugins/mysql/install.sh +++ b/plugins/mysql/install.sh @@ -11,6 +11,7 @@ export PATH # cd /www/server/mdserver-web && source bin/activate && python3 plugins/mysql/index.py sync_database_repair {"db":"xxx","sign":""} # cd /www/server/mdserver-web && source bin/activate && python3 plugins/mysql/index.py init_slave_status # cd /www/server/mdserver-web && source bin/activate && python3 plugins/mysql/index.py install_pre_inspection +# cd /www/server/mdserver-web && source bin/activate && python3 plugins/mysql/index.py set_slave_status {"close":"change"} curPath=`pwd` rootPath=$(dirname "$curPath") rootPath=$(dirname "$rootPath") From 48ac052de8fe424df8c931edae23f8f40c3c2047 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:35:03 +0800 Subject: [PATCH 03/16] Update index.py --- plugins/mysql/index.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 25e89adf5..2d8208b84 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3006,6 +3006,8 @@ def setSlaveStatus(version=''): if (v["Slave_IO_Running"] == 'Yes' or v["Slave_SQL_Running"] == 'Yes'): pdb.query("stop {}".format(cmd)) + if (v["Replica_IO_Running"] == 'Yes' or v["Replica_SQL_Running"] == 'Yes'): + pdb.query("stop {}".format(cmd)) else: pdb.query("start {}".format(cmd)) From 1eb29acf7cfbb4fba3ff79765041bd3ac3c01d03 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:35:16 +0800 Subject: [PATCH 04/16] Update index.py --- plugins/mysql/index.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 2d8208b84..06b54d75b 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3006,7 +3006,7 @@ def setSlaveStatus(version=''): if (v["Slave_IO_Running"] == 'Yes' or v["Slave_SQL_Running"] == 'Yes'): pdb.query("stop {}".format(cmd)) - if (v["Replica_IO_Running"] == 'Yes' or v["Replica_SQL_Running"] == 'Yes'): + elif (v["Replica_IO_Running"] == 'Yes' or v["Replica_SQL_Running"] == 'Yes'): pdb.query("stop {}".format(cmd)) else: pdb.query("start {}".format(cmd)) From 058b3b8d621004f5ad90ae6ce138b84125b9d0d9 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:36:27 +0800 Subject: [PATCH 05/16] Update index.py --- plugins/mysql/index.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 06b54d75b..15d6bec7a 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3004,9 +3004,9 @@ def setSlaveStatus(version=''): ch_name = v['Channel_Name'] cmd = slave_name + " for channel '{}'".format(ch_name) - if (v["Slave_IO_Running"] == 'Yes' or v["Slave_SQL_Running"] == 'Yes'): + if (( 'Slave_IO_Running' in v and v["Slave_IO_Running"] == 'Yes') or ('Slave_SQL_Running' in v and v["Slave_SQL_Running"] == 'Yes')): pdb.query("stop {}".format(cmd)) - elif (v["Replica_IO_Running"] == 'Yes' or v["Replica_SQL_Running"] == 'Yes'): + elif (( 'Replica_IO_Running' in v and v["Replica_IO_Running"] == 'Yes') or ( 'Replica_SQL_Running' in v and v["Replica_SQL_Running"] == 'Yes') ): pdb.query("stop {}".format(cmd)) else: pdb.query("start {}".format(cmd)) From 4c9924580a52882163caaccd0870d730f462504e Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:38:37 +0800 Subject: [PATCH 06/16] Update index.py --- plugins/mysql/index.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 15d6bec7a..09482625c 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3018,9 +3018,12 @@ def deleteSlaveFunc(sign = ''): if sign != '': db.query("stop slave for channel '{}'".format(sign)) db.query("reset slave all for channel '{}'".format(sign)) + db.query("reset replica all for channel '{}'".format(sign)) else: db.query('stop slave') db.query('reset slave all') + db.query('reset replica all') + def deleteSlave(version=''): args = getArgs() From c68e0562670e675a00b40bb7ca52b782f1e31d97 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:44:55 +0800 Subject: [PATCH 07/16] Update index.py --- plugins/mysql-community/index.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/plugins/mysql-community/index.py b/plugins/mysql-community/index.py index da34ccb5d..c8966a096 100755 --- a/plugins/mysql-community/index.py +++ b/plugins/mysql-community/index.py @@ -2749,7 +2749,13 @@ def setSlaveStatus(version=''): mode = mw.readFile(mode_file) pdb = pMysqlDb() - dlist = pdb.query('show slave status') + slave_name = 'slave' + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + slave_name = 'replica' + cmd = 'show '+slave_name+' status' + + dlist = pdb.query(cmd) if len(dlist) == 0: return mw.returnJson(False, '需要手动添加同步账户或者执行初始化!') @@ -2758,9 +2764,11 @@ def setSlaveStatus(version=''): cmd = "slave" if 'Channel_Name' in v: ch_name = v['Channel_Name'] - cmd = "slave for channel '{}'".format(ch_name) + cmd = slave_name + " for channel '{}'".format(ch_name) - if (v["Slave_IO_Running"] == 'Yes' or v["Slave_SQL_Running"] == 'Yes'): + if (( 'Slave_IO_Running' in v and v["Slave_IO_Running"] == 'Yes') or ('Slave_SQL_Running' in v and v["Slave_SQL_Running"] == 'Yes')): + pdb.query("stop {}".format(cmd)) + elif (( 'Replica_IO_Running' in v and v["Replica_IO_Running"] == 'Yes') or ( 'Replica_SQL_Running' in v and v["Replica_SQL_Running"] == 'Yes') ): pdb.query("stop {}".format(cmd)) else: pdb.query("start {}".format(cmd)) @@ -2775,9 +2783,11 @@ def deleteSlave(version=''): sign = args['sign'] db.query("stop slave for channel '{}'".format(sign)) db.query("reset slave all for channel '{}'".format(sign)) + db.query("reset replica all for channel '{}'".format(sign)) else: db.query('stop slave') db.query('reset slave all') + db.query('reset replica all') return mw.returnJson(True, '删除成功!') From c6117cb599ab9e150770d6631e8e16d94df0c9b5 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:46:21 +0800 Subject: [PATCH 08/16] update --- plugins/mysql-community/index.py | 14 ++++++++------ plugins/mysql/index.py | 13 ++++++------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/plugins/mysql-community/index.py b/plugins/mysql-community/index.py index c8966a096..19118e2d1 100755 --- a/plugins/mysql-community/index.py +++ b/plugins/mysql-community/index.py @@ -2779,15 +2779,17 @@ def setSlaveStatus(version=''): def deleteSlave(version=''): args = getArgs() db = pMysqlDb() + slave_name = 'slave' + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + slave_name = 'replica' if 'sign' in args: sign = args['sign'] - db.query("stop slave for channel '{}'".format(sign)) - db.query("reset slave all for channel '{}'".format(sign)) - db.query("reset replica all for channel '{}'".format(sign)) + db.query("stop {} for channel '{}'".format(slave_name,sign)) + db.query("reset {} all for channel '{}'".format(slave_name, sign)) else: - db.query('stop slave') - db.query('reset slave all') - db.query('reset replica all') + db.query('stop '+slave_name) + db.query('reset '+slave_name+' all') return mw.returnJson(True, '删除成功!') diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 09482625c..f2f8a5248 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3015,14 +3015,13 @@ def setSlaveStatus(version=''): def deleteSlaveFunc(sign = ''): db = pMysqlDb() - if sign != '': - db.query("stop slave for channel '{}'".format(sign)) - db.query("reset slave all for channel '{}'".format(sign)) - db.query("reset replica all for channel '{}'".format(sign)) + if 'sign' in args: + sign = args['sign'] + db.query("stop {} for channel '{}'".format(slave_name,sign)) + db.query("reset {} all for channel '{}'".format(slave_name, sign)) else: - db.query('stop slave') - db.query('reset slave all') - db.query('reset replica all') + db.query('stop '+slave_name) + db.query('reset '+slave_name+' all') def deleteSlave(version=''): From fce16084031dd927a912715a6889d6bd8874a40e Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:46:38 +0800 Subject: [PATCH 09/16] Update index.py --- plugins/mysql/index.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index f2f8a5248..2f126e5d2 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3015,6 +3015,10 @@ def setSlaveStatus(version=''): def deleteSlaveFunc(sign = ''): db = pMysqlDb() + slave_name = 'slave' + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + slave_name = 'replica' if 'sign' in args: sign = args['sign'] db.query("stop {} for channel '{}'".format(slave_name,sign)) From 2fb722edbfe2ae15d1cb4384c46683ccd928e76f Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:50:22 +0800 Subject: [PATCH 10/16] Update index.py --- plugins/mysql/index.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 2f126e5d2..634d7cfb1 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3019,7 +3019,7 @@ def deleteSlaveFunc(sign = ''): mdb8 = getMdb8Ver() if mw.inArray(mdb8, version): slave_name = 'replica' - if 'sign' in args: + if sign != '': sign = args['sign'] db.query("stop {} for channel '{}'".format(slave_name,sign)) db.query("reset {} all for channel '{}'".format(slave_name, sign)) From cb7367264bcf18272d032cfd1467f9f16459f8db Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 16:53:15 +0800 Subject: [PATCH 11/16] Update index.py --- plugins/mysql/index.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 634d7cfb1..cf8061d24 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -2855,12 +2855,15 @@ def initSlaveStatusSyncUser(version=''): if len(slave_data) < 1: return mw.returnJson(False, '需要先添加同步用户配置!') + slave_name = 'slave' + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + slave_name = 'replica' + # print(data) pdb = pMysqlDb() if len(slave_data) == 1: - cmd_slave = 'show slave status' - if pk_version.parse(version) < pk_version.parse("8.0"): - cmd_slave = 'SHOW REPLICA STATUS' + cmd_slave = 'show '+slave_name+' status' dlist = pdb.query(cmd_slave) if dlist and len(dlist) > 0: return mw.returnJson(False, '已经初始化好了zz...') @@ -2899,8 +2902,8 @@ def initSlaveStatusSyncUser(version=''): # pdb.query("start slave user='{}' password='{}';".format( # u['user'], u['pass'])) - pdb.query("start slave") - pdb.query("start all slaves") + pdb.query("start "+slave_name) + pdb.query("start all "+slave_name) if msg == '': msg = '初始化成功!' From f3557e9acf06fa438c6c168aed0aa1af858a109c Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 17:01:24 +0800 Subject: [PATCH 12/16] update --- plugins/mysql-community/index.py | 27 ++++++++++++++++----------- plugins/mysql/index.py | 33 +++++++++++++++------------------ 2 files changed, 31 insertions(+), 29 deletions(-) diff --git a/plugins/mysql-community/index.py b/plugins/mysql-community/index.py index 19118e2d1..0e533c4f8 100755 --- a/plugins/mysql-community/index.py +++ b/plugins/mysql-community/index.py @@ -406,6 +406,12 @@ def getShowLogFile(): def getMdb8Ver(): return ['8.0','8.1','8.2','8.3','8.4','9.0','9.1',"9.2"] +def getSlaveName(): + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + return 'replica' + return 'slave' + def pGetDbUser(): if mw.isAppleSystem(): user = mw.execShell("who | sed -n '2, 1p' |awk '{print $1}'")[0].strip() @@ -2621,10 +2627,11 @@ def initSlaveStatusSyncUser(version=''): if len(slave_data) < 1: return mw.returnJson(False, '需要先添加同步用户配置!') + slave_name = getSlaveName() # print(data) pdb = pMysqlDb() if len(slave_data) == 1: - dlist = pdb.query('show slave status') + dlist = pdb.query('show '+slave_name+' status') if len(dlist) > 0: return mw.returnJson(False, '已经初始化好了zz...') @@ -2660,8 +2667,8 @@ def initSlaveStatusSyncUser(version=''): # pdb.query("start slave user='{}' password='{}';".format( # u['user'], u['pass'])) - pdb.query("start slave") - pdb.query("start all slaves") + pdb.query("start "+slave_name) + pdb.query("start all "+slave_name) if msg == '': msg = '初始化成功!' @@ -2669,8 +2676,9 @@ def initSlaveStatusSyncUser(version=''): def initSlaveStatusSSH(version=''): + slave_name = getSlaveName() db = pMysqlDb() - dlist = db.query('show slave status') + dlist = db.query('show '+slave_name+' status') conn = pSqliteDb('slave_id_rsa') ssh_list = conn.field('ip,port,id_rsa,db_user').select() @@ -2684,8 +2692,8 @@ def initSlaveStatusSSH(version=''): paramiko.util.log_to_file('paramiko.log') ssh = paramiko.SSHClient() - db.query('stop slave') - db.query('reset slave all') + db.query('stop '+slave_name) + db.query('reset '+slave_name+' all') for data in ssh_list: ip = data['ip'] SSH_PRIVATE_KEY = "/tmp/t_ssh_" + ip + ".txt" @@ -2738,7 +2746,7 @@ def initSlaveStatusSSH(version=''): os.system("rm -rf " + SSH_PRIVATE_KEY) except Exception as e: return mw.returnJson(False, '[主][' + ip + ']:SSH认证配置连接失败!' + str(e)) - db.query('start slave') + db.query('start '+slave_name) return mw.returnJson(True, '初始化成功!') @@ -2749,10 +2757,7 @@ def setSlaveStatus(version=''): mode = mw.readFile(mode_file) pdb = pMysqlDb() - slave_name = 'slave' - mdb8 = getMdb8Ver() - if mw.inArray(mdb8, version): - slave_name = 'replica' + slave_name = getSlaveName() cmd = 'show '+slave_name+' status' dlist = pdb.query(cmd) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index cf8061d24..3a57475fd 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -437,6 +437,13 @@ def getShowLogFile(): def getMdb8Ver(): return ['8.0','8.1','8.2','8.3','8.4','9.0',"9.1","9.2"] + +def getSlaveName(): + mdb8 = getMdb8Ver() + if mw.inArray(mdb8, version): + return 'replica' + return 'slave' + def pGetDbUser(): if mw.isAppleSystem(): user = mw.execShell( @@ -2855,11 +2862,7 @@ def initSlaveStatusSyncUser(version=''): if len(slave_data) < 1: return mw.returnJson(False, '需要先添加同步用户配置!') - slave_name = 'slave' - mdb8 = getMdb8Ver() - if mw.inArray(mdb8, version): - slave_name = 'replica' - + slave_name = getSlaveName() # print(data) pdb = pMysqlDb() if len(slave_data) == 1: @@ -2911,8 +2914,9 @@ def initSlaveStatusSyncUser(version=''): def initSlaveStatusSSH(version=''): + slave_name = getSlaveName() db = pMysqlDb() - dlist = db.query('show slave status') + dlist = db.query('show '+slave_name+' status') conn = pSqliteDb('slave_id_rsa') ssh_list = conn.field('ip,port,id_rsa,db_user').select() @@ -2926,8 +2930,8 @@ def initSlaveStatusSSH(version=''): paramiko.util.log_to_file('paramiko.log') ssh = paramiko.SSHClient() - db.query('stop slave') - db.query('reset slave all') + db.query('stop '+slave_name) + db.query('reset '+slave_name+' all') for data in ssh_list: ip = data['ip'] SSH_PRIVATE_KEY = "/tmp/t_ssh_" + ip + ".txt" @@ -2980,7 +2984,7 @@ def initSlaveStatusSSH(version=''): os.system("rm -rf " + SSH_PRIVATE_KEY) except Exception as e: return mw.returnJson(False, '[主][' + ip + ']:SSH认证配置连接失败!' + str(e)) - db.query('start slave') + db.query('start '+slave_name) return mw.returnJson(True, '初始化成功!') @@ -2992,11 +2996,7 @@ def setSlaveStatus(version=''): mode = mw.readFile(mode_file) pdb = pMysqlDb() - slave_name = 'slave' - mdb8 = getMdb8Ver() - if mw.inArray(mdb8, version): - slave_name = 'replica' - cmd = 'show '+slave_name+' status' + slave_name = getSlaveName() dlist = pdb.query(cmd) if len(dlist) == 0: return mw.returnJson(False, '需要手动添加同步账户或者执行初始化!') @@ -3018,10 +3018,7 @@ def setSlaveStatus(version=''): def deleteSlaveFunc(sign = ''): db = pMysqlDb() - slave_name = 'slave' - mdb8 = getMdb8Ver() - if mw.inArray(mdb8, version): - slave_name = 'replica' + slave_name = getSlaveName() if sign != '': sign = args['sign'] db.query("stop {} for channel '{}'".format(slave_name,sign)) From 4fbf9c345d45b86dbaf450679bb4f82e16f1af15 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 17:03:45 +0800 Subject: [PATCH 13/16] update --- plugins/mysql-community/index.py | 7 +++++-- plugins/mysql/index.py | 9 ++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/plugins/mysql-community/index.py b/plugins/mysql-community/index.py index 0e533c4f8..7ae6ed1bf 100755 --- a/plugins/mysql-community/index.py +++ b/plugins/mysql-community/index.py @@ -3169,8 +3169,11 @@ def doFullSyncUserImportContentForChannel(file, channel_name): # print(file, channel_name) content = mw.readFile(file) - content = content.replace('STOP SLAVE;', "STOP SLAVE for channel '{}';".format(channel_name)) - content = content.replace('START SLAVE;', "START SLAVE for channel '{}';".format(channel_name)) + slave_name = getSlaveName() + slave_name = slave_name.upper() + + content = content.replace('STOP '+slave_name+';', "STOP {} for channel '{}';".format(slave_name,channel_name)) + content = content.replace('START '+slave_name+';', "START {} for channel '{}';".format(slave_name,channel_name)) find_head = "CHANGE MASTER TO " find_re = find_head+"(.*?);" diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 3a57475fd..eeece715f 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3413,10 +3413,13 @@ def doFullSyncUserImportContentForChannel(file, channel_name): # print(file, channel_name) content = mw.readFile(file) - content = content.replace('STOP SLAVE;', "STOP SLAVE for channel '{}';".format(channel_name)) - content = content.replace('START SLAVE;', "START SLAVE for channel '{}';".format(channel_name)) + slave_name = getSlaveName() + slave_name = slave_name.upper() - find_head = r"CHANGE MASTER TO " + content = content.replace('STOP '+slave_name+';', "STOP {} for channel '{}';".format(slave_name,channel_name)) + content = content.replace('START '+slave_name+';', "START {} for channel '{}';".format(slave_name,channel_name)) + + find_head = "CHANGE MASTER TO " find_re = find_head+"(.*?);" find_r = re.search(find_re, content, re.I|re.M) if find_r: From fb51e0fcd133aa8810e10369f9d2f276690a47ab Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 17:05:09 +0800 Subject: [PATCH 14/16] Update index.py --- plugins/mysql/index.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index eeece715f..2899c0da9 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3434,6 +3434,7 @@ def doFullSyncUserImportContentForChannel(file, channel_name): def doFullSyncUser(version=''): + slave_name = getSlaveName() which_pv = mw.execShell('which pv') is_exist_pv = False if os.path.exists(which_pv[0]): @@ -3495,9 +3496,9 @@ def doFullSyncUser(version=''): mdb8 = getMdb8Ver() if mw.inArray(mdb8,version): - db.query("stop slave user='{}' password='{}';".format(user, apass)) + db.query("stop {} user='{}' password='{}';".format(slave_name,user, apass)) else: - db.query("stop slave") + db.query("stop "+slave_name) time.sleep(1) @@ -3593,9 +3594,9 @@ def doFullSyncUser(version=''): if mw.inArray(mdb8,version): db.query("start replica user='{}' password='{}';".format(user, apass)) else: - db.query("start slave") + db.query("start "+slave_name) - db.query("start all slaves") + db.query("start all "+slave_name) time_all_e = time.time() cos = time_all_e - time_all_s writeDbSyncStatus({'code': 6, 'msg': '总耗时:'+str(int(cos))+'秒,从库重启完成...', 'progress': 100}) From c6e6771839c061ff159661b7a85e62fe2c14d8e3 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 17:21:18 +0800 Subject: [PATCH 15/16] Update index.py --- plugins/mysql/index.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index 2899c0da9..d3866eea2 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3193,11 +3193,14 @@ def syncDatabaseRepair(version=''): sync_count_data = sync_db.query(cmd_count_sql) if local_count_data != sync_count_data: - print("all data compare: ",local_count_data, sync_count_data) - inconsistent_table.append(table_name) - diff = sync_count_data[0]['num'] - local_count_data[0]['num'] - print(table_name+', need sync. diff,'+str(diff)) - mw.writeFile(tmp_log, table_name+', need sync. diff,'+str(diff)+'\n','a+') + if sync_count_data == None: + print("sync:"+table_name+" is not exists!!!") + else: + print("all data compare: ",local_count_data, sync_count_data) + inconsistent_table.append(table_name) + diff = sync_count_data[0]['num'] - local_count_data[0]['num'] + print(table_name+', need sync. diff,'+str(diff)) + mw.writeFile(tmp_log, table_name+', need sync. diff,'+str(diff)+'\n','a+') else: print(table_name+' check ok.') mw.writeFile(tmp_log, table_name+' check ok.\n','a+') From 351d4a0ad67dc617aa70f6106d08c73f54aeb161 Mon Sep 17 00:00:00 2001 From: dami Date: Wed, 25 Jun 2025 17:26:17 +0800 Subject: [PATCH 16/16] Update index.py --- plugins/mysql/index.py | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/mysql/index.py b/plugins/mysql/index.py index d3866eea2..6ec149f6d 100755 --- a/plugins/mysql/index.py +++ b/plugins/mysql/index.py @@ -3195,6 +3195,7 @@ def syncDatabaseRepair(version=''): if local_count_data != sync_count_data: if sync_count_data == None: print("sync:"+table_name+" is not exists!!!") + mw.writeFile(tmp_log, "sync:"+table_name+" is not exists!!!"+'\n','a+') else: print("all data compare: ",local_count_data, sync_count_data) inconsistent_table.append(table_name)