温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何使用MySQL角色管理

发布时间:2021-10-22 10:36:16 来源:亿速云 阅读:199 作者:iii 栏目:数据库

这篇文章主要讲解了“如何使用MySQL角色管理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用MySQL角色管理”吧!

1 配置 proxy

mysql> show variables like "%proxy%"; #查看当前proxy是否开启,OFF 表示没有开启 +-----------------------------------+-------+ | Variable_name                     | Value | +-----------------------------------+-------+ | check_proxy_users                 | OFF   | | mysql_native_password_proxy_users | OFF   | | proxy_user                        |       | | sha256_password_proxy_users       | OFF   | +-----------------------------------+-------+ 4 rows in set (0.02 sec)  mysql> set global check_proxy_users =on; Query OK, 0 rows affected (0.00 sec)  mysql> set global mysql_native_password_proxy_users = on; Query OK, 0 rows affected (0.01 sec)  mysql> exit

以上设置参数,对当前会话无效,需要退出后重新登录,或直接设置到 my.cnf 中去;

2 创建角色和用户

mysql>  create user role_dba; Query OK, 0 rows affected (1.03 sec)  mysql> create user 'jack'; Query OK, 0 rows affected (0.01 sec)  mysql> create user 'mary'; Query OK, 0 rows affected (0.01 sec)

用户为设置密码,如需密码可以使用 identified by '####' 设置;

3 权限映射

将 role_dba 的权限映射( map )到 jack 、mary

mysql> grant proxy on role_dba to jack; Query OK, 0 rows affected (0.02 sec)  mysql> grant proxy on role_dba to mary; Query OK, 0 rows affected (0.01 sec)

4 给用户赋权

给 role_dba 赋权(模拟 role 赋权)

mysql> grant select on *.* to role_dba; Query OK, 0 rows affected (0.01 sec)  mysql> show grants for role_dba; +---------------------------------------+ | Grants for role_dba@%                 | +---------------------------------------+ | GRANT SELECT ON *.* TO 'role_dba'@'%' | +---------------------------------------+ 1 row in set (0.00 sec)  mysql> show grants for jack; +---------------------------------------------+ | Grants for jack@%                           | +---------------------------------------------+ | GRANT USAGE ON *.* TO 'jack'@'%'            | | GRANT PROXY ON 'role_dba'@'%' TO 'jack'@'%' | +---------------------------------------------+ 2 rows in set (0.00 sec)  mysql> show grants for mary; +---------------------------------------------+ | Grants for mary@%                           | +---------------------------------------------+ | GRANT USAGE ON *.* TO 'mary'@'%'            | | GRANT PROXY ON 'role_dba'@'%' TO 'mary'@'%' | +---------------------------------------------+ 2 rows in set (0.00 sec)

5 查看 mysql.proxies_priv

mysql> select * from mysql.proxies_priv; +-----------+------+--------------+--------------+------------+----------------------+---------------------+ | Host      | User | Proxied_host | Proxied_user | With_grant | Grantor              | Timestamp           | +-----------+------+--------------+--------------+------------+----------------------+---------------------+ | localhost | root |              |              |          1 | boot@connecting host | 0000-00-00 00:00:00 | | %         | will | %            | will_dba     |          0 | root@localhost       | 0000-00-00 00:00:00 | | %         | tom  | %            | will_dba     |          0 | root@localhost       | 0000-00-00 00:00:00 | | %         | jack | %            | role_dba     |          0 | root@localhost       | 0000-00-00 00:00:00 | | %         | mary | %            | role_dba     |          0 | root@localhost       | 0000-00-00 00:00:00 | +-----------+------+--------------+--------------+------------+----------------------+---------------------+ 5 rows in set (0.01 sec)

6 验证

$ mysql -h 127.0.0.1 -u jack   Welcome to the MySQL monitor. Commands end with ; or \g.  Your MySQL connection id is 249  Server version: 5.7.28-log MySQL Community Server (GPL)  Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.  Oracle is a registered trademark of Oracle Corporation and/or its  affiliates. Other names may be trademarks of their respective  owners.  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  mysql> select * from test.ssd limit 1;  +---+------+------+  | a | b  | c  |  +---+------+------+  | 1 | NULL | NULL |  +---+------+------+  1 row in set (0.01 sec)

感谢各位的阅读,以上就是“如何使用MySQL角色管理”的内容了,经过本文的学习后,相信大家对如何使用MySQL角色管理这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI