This commit is contained in:
2026-11-04 10:21:48 +08:00
parent 84b94a172e
commit 015e57f96d
2 changed files with 64 additions and 21 deletions

View File

@@ -3005,10 +3005,18 @@ def initSlaveStatus(version=''):
return mw.returnJson(False, '需要先设置同步配置')
mode = mw.readFile(mode_file)
if mode == 'ssh':
return initSlaveStatusSSH(version)
if mode == 'sync-user':
return initSlaveStatusSyncUser(version)
try:
if mode == 'ssh':
return initSlaveStatusSSH(version)
if mode == 'sync-user':
return initSlaveStatusSyncUser(version)
except Exception as e:
estr = str(e)
if '1045' in estr or 'Access denied' in estr:
return mw.returnJson(False, 'root密码错误,请先在面板[修改root密码]或点[一键修复]重置密码!')
if '2003' in estr or 'Can\'t connect' in estr or '2006' in estr:
return mw.returnJson(False, 'MySQL连接失败: ' + estr)
return mw.returnJson(False, '初始化同步状态失败: ' + estr)
def parseSlaveSyncCmd(cmd):
@@ -3040,11 +3048,21 @@ def initSlaveStatusSyncUser(version=''):
slave_name = getSlaveName()
# print(data)
pdb = pMysqlDb()
if len(slave_data) == 1:
dlist = pdb.query('show '+slave_name+' status')
if len(dlist) > 0:
return mw.returnJson(False, '已经初始化好了zz...')
try:
pdb = pMysqlDb()
except Exception as e:
return mw.returnJson(False, '数据库连接失败: ' + str(e))
try:
if len(slave_data) == 1:
dlist = pdb.query('show '+slave_name+' status')
if len(dlist) > 0:
return mw.returnJson(False, '已经初始化好了zz...')
except Exception as e:
estr = str(e)
if '1045' in estr or 'Access denied' in estr:
return mw.returnJson(False, 'root密码错误,请先在面板[修改root密码]或点[一键修复]重置密码!')
return mw.returnJson(False, '检查同步状态失败: ' + estr)
msg = ''
local_mode = recognizeDbMode()
@@ -3102,8 +3120,14 @@ def initSlaveStatusSyncUser(version=''):
def initSlaveStatusSSH(version=''):
slave_name = getSlaveName()
db = pMysqlDb()
dlist = db.query('show '+slave_name+' status')
try:
db = pMysqlDb()
dlist = db.query('show '+slave_name+' status')
except Exception as e:
estr = str(e)
if '1045' in estr or 'Access denied' in estr:
return mw.returnJson(False, 'root密码错误,请先在面板[修改root密码]或点[一键修复]重置密码!')
return mw.returnJson(False, '数据库连接失败: ' + estr)
conn = pSqliteDb('slave_id_rsa')
ssh_list = conn.field('ip,port,id_rsa,db_user').select()

View File

@@ -3172,10 +3172,19 @@ def initSlaveStatus(version=''):
return mw.returnJson(False, '需要先设置同步配置')
mode = mw.readFile(mode_file)
if mode == 'ssh':
return initSlaveStatusSSH(version)
if mode == 'sync-user':
return initSlaveStatusSyncUser(version)
try:
if mode == 'ssh':
return initSlaveStatusSSH(version)
if mode == 'sync-user':
return initSlaveStatusSyncUser(version)
except Exception as e:
# 密码错误/连接失败时返回友好提示, 不要把 traceback 暴露给调用方
estr = str(e)
if '1045' in estr or 'Access denied' in estr:
return mw.returnJson(False, 'root密码错误,请先在面板[修改root密码]或点[一键修复]重置密码!')
if '2003' in estr or 'Can\'t connect' in estr or '2006' in estr:
return mw.returnJson(False, 'MySQL连接失败: ' + estr)
return mw.returnJson(False, '初始化同步状态失败: ' + estr)
def makeSyncUsercmd(u, version=''):
@@ -3226,12 +3235,22 @@ def initSlaveStatusSyncUser(version=''):
slave_name = getSlaveName()
# print(data)
pdb = pMysqlDb()
if len(slave_data) == 1:
cmd_slave = 'show '+slave_name+' status'
dlist = pdb.query(cmd_slave)
if dlist and len(dlist) > 0:
return mw.returnJson(False, '已经初始化好了zz...')
try:
pdb = pMysqlDb()
except Exception as e:
return mw.returnJson(False, '数据库连接失败: ' + str(e))
try:
if len(slave_data) == 1:
cmd_slave = 'show '+slave_name+' status'
dlist = pdb.query(cmd_slave)
if dlist and len(dlist) > 0:
return mw.returnJson(False, '已经初始化好了zz...')
except Exception as e:
estr = str(e)
if '1045' in estr or 'Access denied' in estr:
return mw.returnJson(False, 'root密码错误,请先在面板[修改root密码]或点[一键修复]重置密码!')
return mw.returnJson(False, '检查同步状态失败: ' + estr)
msg = ''
local_mode = recognizeDbMode()