mirror of
https://github.com/midoks/mdserver-web.git
synced 2026-10-10 04:39:26 +08:00
up
This commit is contained in:
+24
-4
@@ -1544,10 +1544,30 @@ def doFullSync():
|
||||
paramiko.util.log_to_file('paramiko.log')
|
||||
ssh = paramiko.SSHClient()
|
||||
|
||||
SSH_PRIVATE_KEY = '/Users/midoks/.ssh/id_rsa'
|
||||
key = paramiko.RSAKey.from_private_key_file(SSH_PRIVATE_KEY)
|
||||
ssh.load_system_host_keys()
|
||||
ssh.connect(hostname=ip, port=22, username='root', pkey=key)
|
||||
SSH_PRIVATE_KEY = '/root/.ssh/id_rsa'
|
||||
|
||||
if mw.getOs() == 'darwin':
|
||||
user = mw.execShell(
|
||||
"who | sed -n '2, 1p' |awk '{print $1}'")[0].strip()
|
||||
SSH_PRIVATE_KEY = '/User/' + user + '/.ssh/id_rsa'
|
||||
|
||||
if not os.path.exists(SSH_PRIVATE_KEY):
|
||||
status_data['code'] = 0
|
||||
status_data['msg'] = '需要配置免登录...'
|
||||
mw.writeFile(status_file, json.dumps(status_data))
|
||||
return
|
||||
|
||||
try:
|
||||
key = paramiko.RSAKey.from_private_key_file(SSH_PRIVATE_KEY)
|
||||
# ssh.load_system_host_keys()
|
||||
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
ssh.connect(hostname=ip, port=22, username='root', pkey=key)
|
||||
except Exception as e:
|
||||
status_data['code'] = 0
|
||||
status_data['msg'] = '需要配置免登录....'
|
||||
mw.writeFile(status_file, json.dumps(status_data))
|
||||
return
|
||||
|
||||
cmd = "cd /www/server/mdserver-web && python /www/server/mdserver-web/plugins/mysql/index.py dump_mysql_data {\"db\":'" + args[
|
||||
'db'] + "'}"
|
||||
stdin, stdout, stderr = ssh.exec_command(cmd)
|
||||
|
||||
@@ -1411,6 +1411,25 @@ function getFullSyncStatus(db){
|
||||
});
|
||||
}
|
||||
|
||||
function handlerRun(){
|
||||
cmd = 'cd /www/server/mdserver-web && python /www/server/mdserver-web/plugins/mysql/index.py do_full_sync {"db":"all"}';
|
||||
var loadOpen = layer.open({
|
||||
type: 1,
|
||||
title: '手动执行',
|
||||
area: '500px',
|
||||
content:"<form class='bt-form pd20 pb70' id='add_master'>\
|
||||
<div class='line'>"+cmd+"</div>\
|
||||
<div class='bt-form-submit-btn'>\
|
||||
<button type='button' class='btn btn-success btn-sm btn-title class-copy-cmd'>复制</button>\
|
||||
</div>\
|
||||
</form>",
|
||||
});
|
||||
copyPass(cmd);
|
||||
$('.class-copy-cmd').click(function(){
|
||||
copyPass(cmd);
|
||||
});
|
||||
}
|
||||
|
||||
function masterOrSlaveConf(version=''){
|
||||
|
||||
function getMasterDbList(){
|
||||
@@ -1541,7 +1560,7 @@ function masterOrSlaveConf(version=''){
|
||||
</div>\
|
||||
<div id="databasePage" class="dataTables_paginate paging_bootstrap page"></div>\
|
||||
<div class="table_toolbar">\
|
||||
<span class="sync btn btn-default btn-sm" onclick="getMasterRepSlaveList()" title="设置主服务器密钥">设置主服务器密钥</span>\
|
||||
<span class="sync btn btn-default btn-sm" onclick="handlerRun()" title="免登录设置后,需要手动执行一下!">手动命令</span>\
|
||||
<span class="sync btn btn-default btn-sm" onclick="getFullSyncStatus(\'test\')" title="全量同步">全量同步</span>\
|
||||
</div>\
|
||||
</div>';
|
||||
|
||||
Reference in New Issue
Block a user