This commit is contained in:
midoks
2019-01-14 23:29:07 +08:00
parent ab52563f3f
commit b7394e2f79
3 changed files with 66 additions and 83 deletions
+57
View File
@@ -800,6 +800,61 @@ def setDbAccess():
psdb.where('username=?', (name,)).save('accept', (access,))
return public.returnJson(True, '设置成功!')
def getDbInfo():
args = getArgs()
data = checkArgs(args, ['name'])
if not data[0]:
return data[1]
db_name = args['name']
pdb = pMysqlDb()
# print 'show tables from `%s`' % db_name
table_res = pdb.query('show tables from `%s`' % db_name)
isError = isSqlError(table_res)
if isError != None:
return isError
tables = mapToList(table_res)
ret = {}
if type(tables) == list:
try:
data = mapToList(pdb.query(
"select sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables where table_schema='%s'" % db_name))[0][0]
except:
data = 0
if not data:
data = 0
ret['data_size'] = public.toSize(data)
ret['database'] = db_name
ret3 = []
for i in tables:
if i == 1049:
return public.returnJson(False, '指定数据库不存在!')
table = mapToList(
pdb.query("show table status from `%s` where name = '%s'" % (db_name, i[0])))
if not table:
continue
try:
ret2 = {}
ret2['type'] = table[0][1]
data_size = table[0][6]
ret2['rows_count'] = table[0][4]
ret2['collation'] = table[0][14]
ret2['data_size'] = public.toSize(int(data_size))
ret2['table_name'] = i[0]
ret3.append(ret2)
except:
continue
ret['tables'] = (ret3)
return public.getJson(ret)
if __name__ == "__main__":
func = sys.argv[1]
if func == 'status':
@@ -856,5 +911,7 @@ if __name__ == "__main__":
print getDbAccess()
elif func == 'set_db_access':
print setDbAccess()
elif func == 'get_db_info':
print getDbInfo()
else:
print 'error'
+9 -1
View File
@@ -861,7 +861,15 @@ function openPhpmyadmin(name,username,password){
setTimeout(function(){
$("#toPHPMyAdmin").submit();
},200);
}
function repTools(dbname){
console.log(dbname);
myPost('get_db_info', {name:dbname}, function(data){
console.log(data);
var rdata = $.parseJSON(data.data);
console.log(rdata);
});
}
function dbList(page, search){
@@ -892,7 +900,7 @@ function dbList(page, search){
list += '<td><span class="c9 input-edit" onclick="setDataByKey(\'databases\',\'ps\',this)" style="display: inline-block;">'+rdata.data[i]['ps']+'</span></td>';
list += '<td style="text-align:right">' +
'<a href="javascript:;" class="btlink" onclick="openPhpmyadmin(\''+rdata.data[i]['name']+'\',\''+rdata.data[i]['username']+'\',\''+rdata.data[i]['password']+'\')" title="数据库管理">管理</a> | ' +
'<a href="javascript:;" class="btlink" title="MySQL优化修复工具">工具</a> | ' +
'<a href="javascript:;" class="btlink" onclick="repTools(\''+rdata.data[i]['name']+'\')" title="MySQL优化修复工具">工具</a> | ' +
'<a href="javascript:;" class="btlink" onclick="setDbAccess(\''+rdata.data[i]['username']+'\')" title="设置数据库权限">权限</a> | ' +
'<a href="javascript:;" class="btlink" onclick="setDbPass('+rdata.data[i]['id']+',\''+ rdata.data[i]['username'] +'\',\'' + rdata.data[i]['password'] + '\')">改密</a> | ' +
'<a href="javascript:;" class="btlink" onclick="delDb(\''+rdata.data[i]['id']+'\',\''+rdata.data[i]['name']+'\')" title="删除数据库">删除</a>' +