mysql查看用户的权限脚本
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,1、安装mysql支持python包yum -y install mysql-connector-python2、查看MySQL 用户权限的Python脚本vi py_priv.py#!/usr/bi
千家信息网最后更新 2026年10月31日mysql查看用户的权限脚本1、安装mysql支持python包
yum -y install mysql-connector-python
2、查看MySQL 用户权限的Python脚本
vi py_priv.py
#!/usr/bin/env python
#coding:utf8
#epel源&yum -y install mysql-connector-python
from __future__ import print_function
import re,sys
import mysql.connector as mdb
config = {
'user':'root',
'password':'123456',
'host':'192.168.1.191',
'port':3306,
'database':'mysql'
}
def GetPriv():
show_username="select concat(\"'\",user,\"'\",'@',\"'\",host,\"'\"),password from mysql.user"
cursor.execute(show_username)
users={}
for i in cursor:
username=i[0]
password=i[1]
users[username]=password
for key in users:
try:
show_priv='show grants for %s' % key
cursor.execute(show_priv)
priv=[]
for i in cursor:
priv.append(tuple(re.split(r' TO ',str(*i))[0].split(r' ON ')))
print(''.center(80,'~'))
print('{0:<10} {1}'.format('用户名:',key))
print('{0:<10} {1}'.format('密码:',users[key]))
for j in priv:
privs=j[0].replace('GRANT','')
privs_info=j[1]
print('{0} {1:<20} {2} {3}'.format('库(表):',privs_info,'权限:',privs))
print('\n')
except Exception as err:
print(err)
continue
conn = mdb.connect(**config)
cursor = conn.cursor()
GetPriv()
cursor.close()
conn.close()
3、给执行权限
chmod +x
4、查看结果
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用户名: ''@'localhost'
密码:
库(表): *.* 权限: USAGE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用户名: 'root'@'192.168.1.%'
密码: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
库(表): *.* 权限: ALL PRIVILEGES
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用户名: 'root'@'localhost'
密码: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
库(表): *.* 权限: ALL PRIVILEGES
库(表): ''@'' 权限: PROXY
yum -y install mysql-connector-python
2、查看MySQL 用户权限的Python脚本
vi py_priv.py
#!/usr/bin/env python
#coding:utf8
#epel源&yum -y install mysql-connector-python
from __future__ import print_function
import re,sys
import mysql.connector as mdb
config = {
'user':'root',
'password':'123456',
'host':'192.168.1.191',
'port':3306,
'database':'mysql'
}
def GetPriv():
show_username="select concat(\"'\",user,\"'\",'@',\"'\",host,\"'\"),password from mysql.user"
cursor.execute(show_username)
users={}
for i in cursor:
username=i[0]
password=i[1]
users[username]=password
for key in users:
try:
show_priv='show grants for %s' % key
cursor.execute(show_priv)
priv=[]
for i in cursor:
priv.append(tuple(re.split(r' TO ',str(*i))[0].split(r' ON ')))
print(''.center(80,'~'))
print('{0:<10} {1}'.format('用户名:',key))
print('{0:<10} {1}'.format('密码:',users[key]))
for j in priv:
privs=j[0].replace('GRANT','')
privs_info=j[1]
print('{0} {1:<20} {2} {3}'.format('库(表):',privs_info,'权限:',privs))
print('\n')
except Exception as err:
print(err)
continue
conn = mdb.connect(**config)
cursor = conn.cursor()
GetPriv()
cursor.close()
conn.close()
3、给执行权限
chmod +x
4、查看结果
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用户名: ''@'localhost'
密码:
库(表): *.* 权限: USAGE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用户名: 'root'@'192.168.1.%'
密码: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
库(表): *.* 权限: ALL PRIVILEGES
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用户名: 'root'@'localhost'
密码: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
库(表): *.* 权限: ALL PRIVILEGES
库(表): ''@'' 权限: PROXY
权限
用户
密码
用户名
脚本
结果
支持
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技互联网
互联网科技企业
互联网金融科技
蓝思科技飞鸽互联网
中关村互联网科技集团
互联网科技公司的优势
互联网科技公司税收优惠
平安科技 互联网
嘟嘟瓜互联网科技
齐家互联网科技
美国互联网黑科技
互联网科技大会案例
老年人脱离互联网科技的作文
栖莱科技互联网股份有限公司
互联网经济与金融科技
互联网公司科技股
互联网行业科技股
互联网科技创新的路径
互联网硬科技公司
福建互联网展示科技馆设计
互联网与科技
科技互联网创业计划书
金融科技与互联网金融相同和不同
互联网校园科技培训
科技互联网大厂
江阴互联网智能科技产品进口
996高科技互联网公司
互联网科技包装股
恒生科技指数 中概互联网
互联网领先科技成果宣传视频