如何在 MySQL 中使用 pt-show-grants

分类:编程技术 时间:2024-02-20 15:42 浏览:0 评论:0
0
本文主要介绍如何在MySQL中使用pt-show-grants。有一定的参考价值。有兴趣的朋友可以参考一下。希望您读完这篇文章后能有所收获。让小编带你来了解一下吧。一度。


我们先看一下这个工具的帮助:
[root@idb4 tmp]# pt-show-grants --help
pt-show- grants 显示来自 MySQL 服务器的授予(用户权限)。如需了解更多
详细信息,请使用 --help 选项,或尝试使用“perldoc
/usr/local/bin/pt-show-grants”获取完整文档。

< br/>用法:pt-show-grants [选项] [DSN]


选项:


--ask-pass 提示输入连接到 MySQL 时的密码
--charset=s -A 默认字符集
--config=A 读取此逗号分隔的配置文件列表;如果指定,这必须是命令行上的第一个选项
  --database=s -D 用于连接的数据库
--defaults-file=s -F 只读取 mysql 选项m 给定文件
--drop 在输出中的每个用户之前添加 DROP USER
--Flush 在输出后添加刷新权限
-[NO] 标头打印转储标头(默认是)
/> - 帮助并退出
- - host =s                                                                                                                                                                     with with with  password=s -p 连接时使用的密码
--pid=s &nbSp;分别
--set-vars=A 设置此逗号分隔列表中的 MySQL 变量
                                                                                                                                                                                                                                                                                   。 /> --[no]timestamp 在转储标头中添加时间戳(默认是)
--user=s           -u 如果不是当前用户则用于登录
  --version                 显示版本并退出


选项类型:s=字符串,i=整数,f=浮点,h/H/a/A=逗号分隔列表,d=DSN,z=大小,m=时间


规则:


此工具接受其他命令行参数。有关详细信息,请参阅概要和使用信息。


DSN 语法为 key=value[,key=value ...] 允许的 DSN 键:

< br/> 关键副本含义
=== ==== ================ ================= ============
A 是 默认字符集
D 是默认数据库
F 是 只从给定文件读取默认选项
P 是 端口用于连接的号码
S 是用于连接的套接字文件
h 是连接到主机
p 是连接时使用的密码
u 是用于登录的用户(如果不是当前用户)


如果DSN是abareword,则该单词被视为'h'键。


处理参数后的选项和值:


--ask-pass FALSE
--charset(无值)
--config /etc/percona-toolkit/percona-toolkit.conf,/等c/percona-toolkit/pt-show-grants.conf,/​​root/。 percona-toolkit.conf,/​​root/.pt-show-grants.conf
--database (无值)
--defaults-file (无值)
--drop (FALSE
--flush                                                                                                                                                                                                                                                                           --ignore(无值)
--only(无值)
--password(无值)
--pid(无值)
--端口(无值)
(无值)
--revoke                                                                                                                                                                                                                                                                                  -user(无值)
--version FALSE


简介一些参数选项:


--ask-pass 连接MySQ时提示输入密码L  提示输入密码连接MySQL

--charset=s -A 默认字符集 连接时使用的字符集

--database=s -D 数据库用于连接数据库的连接DB

--flush 输出后添加FLUSH PRIVILEGES 输出后刷新权限

--[no]header 打印转储头(默认) yes ) 打印转储头信息

--help 显示帮助并退出 显示帮助

--host=s -h 连接到主机 连接到主机信息
< br/ >
使用示例:


[root@idb4 tmp]# pt-show-grants -u mdba -p 123456 -S /tmp/mysql.sock
-- pt-show-grants 转储的拨款
-- 通过 UNIX 套接字从服务器本地主机转储,MySQL 5.6.27-log at 2017-03-24 11:28:44
-- 拨款for ''@'idb4'
GRANT USAGE ON *.* TO ' '@'idb4';
-- 授予 '@'localhost'
GRANT USAGE ON *.* TO ' '@'localhost';
-- 授予 'chaxun'@ '%'
将 *.* 上的选择授予由密码 '*F5 识别的 'chaxun'@'%'8642CAC603E6D0F3667EB641534763E2FB19F9';
GRANT INSERT, SELECT, UPDATE ON `accesslog`.`accesslog` TO 'chaxun '@'%';
-- 授予 'dsj'@'%'
GRANT选择 *.* 到由密码 '*004203D413B4B6A751113FEB906AC120AA382064' 标识的 'dsj'@'%';
授予对 `ixinnuo_sjcj`.`data_interface_gs_etr_info` 的插入、更新到 'dsj'@'%';
-- 授予 'ixinnuo_zx'@'%'
将 *.* 上的创建、创建例程、创建表空间、插入、选择、更新授予由密码 '*AF709110542C4C827FFFB9E77321B0D89259A662' 识别的 'ixinnuo_zx'@'%' ;< br/>-- 'liqianying'@'%'的授权
将 *.* 上的 ALTER、CREATE、INSERT、SELECT、UPDATE 授予通过密码 '*81822E6C8292D1A0D1CE24A3F55E5491EE592CB8' 识别的 'liqianying'@'%';
/>使用授予选项将 `ixinnuo\_sjcj-\_T`.* 上的所有权限授予 'liqianying'@'%';
授予 `ixinnuo\_sjcj`.* 上的创建、删除、插入、选择、更新操作TO 'liqianying'@'%';
GRANT INSERT, SELECT, UPDATE ON `accesslog`.`accesslog` TO 'liqianying'@'%';
- - 授予 f或 'mdba'@'%'
使用授予选项将 *.* 上的所有权限授予由密码 '*E5B360F1D4E45FEFDB70DFE5E2ABD47990A424D6' 标识的 'mdba'@'%';
-- 授予 'mdba '@ 'localhost'
将 *.* 上的所有权限授予由密码'*E97EDDC98587C3F06D9BA8D6BA8D6A17AFD471C4'识别的'mdba'@'localhost';
--授予'monitor'@'172.16.16.27'
GRANT PROCESS, SELECT, SUPER ON *.* TO 'monitor'@'172.16.16.27' IDENTIFIED BY PASSWORD '*1975D095AC033CAF4E1BF94F7202A9BBFEEB66F1';
--授予'root'@'%'
GRANT ALL通过密码“*432CBD2158D692A593E5C4C12188A6AF80589D91”识别的 *.* 权限到“root”@'%',并带有授予选项;
将“accesslog”上的插入、更新授予“root”@'%';
-- 授予 'root'@'127.0.0.1'
通过授予选项将 *.* 上的所有权限授予由密码 '*432CBD2158D692A593E5C4C12188A6AF80589D91' 识别的 'root'@ '127.0.0.1';
-- 授予 'root'@'::1'
将 *.* 上的所有权限授予 'root'@' ::1' 由密码 '*432CBD2158D6 识别92A593E5C4C12188A6AF80589D91' 带授予选项;
--授予“root”@'idb4'
将 *.* 上的所有权限授予由密码“*432CBD2158D692A593E5C4C12188A 识别的“root”@'idb4' 6AF80589D91' 带授权选项;
使用授予选项将 ''@'' 上的代理授予 'root'@'idb4';
-- 授予 'spxqn'@'%'
授予 *.* 上的使用权限TO 'spxqn'@'%' 由密码 '*C2F4C85D0B14C67F3A3B020502A15BE797F00317' 标识;
授予更改、更改例程、创建、创建例程、创建临时表、创建视图、事件、执行、索引、插入、锁定表格、参考、选择、显示视图、触发、更新`ixinnuo\_sjcj-\_T`.* TO 'spxqn'@'%' with GRANT OPTION;
-- 授予'user1'@'%'
将 *.* 的使用权限授予由密码“*DC58115FACCE299160B5C525C7EE22BE70028A8E”标识的“user1”@'%';
将“std_data”.* 上的所有权限授予“user1”@'%';
[ root@idb4 tmp]#


从完整日志中可以看到:
1、先搜索所有用户和主机
2、然后执行show grants one by one

感谢您仔细阅读本文。希望小编分享的这篇文章《如何在MySQL中使用pt-show-grants》对大家有所帮助。也希望大家支持和关注行业信息。频道,更多相关知识等你来学习!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 如何在 MySQL 中使用 pt-show-grants

用户评论