mysql怎么创建管理员 mysql管理员权限( 三 )


Query OK, 0 rows affected (0.02 sec)
mysql create user ytt10;
Query OK, 0 rows affected (0.01 sec)
mysql \q
Bye
那这里其实看到 create user 包含了 create role,create user 即可以创建用户,也可以创建角色 。
示例 6:MySQL 用户也可以当角色来用
-- 用管理员登录,创建用户ytt11,ytt12.
mysql create user ytt11,ytt12;
Query OK, 0 rows affected (0.01 sec)
mysql grant select on ytt_new.* to ytt11;
Query OK, 0 rows affected (0.01 sec)
-- 把ytt11普通用户的权限授予给ytt12
mysql grant ytt11 to ytt12;
Query OK, 0 rows affected (0.01 sec)
-- 来查看 ytt12的权限,可以看到拥有了ytt11的权限
mysql show grants for ytt12;
+-----------------------------------+
| Grants for ytt12@%|
+-----------------------------------+
| GRANT USAGE ON *.* TO `ytt12`@`%` |
| GRANT `ytt11`@`%` TO `ytt12`@`%`|
+-----------------------------------+
2 rows in set (0.00 sec)
-- 在细化点,看看ytt12拥有哪些具体的权限
mysql show grants for ytt12 using ytt11;
+--------------------------------------------+
| Grants for ytt12@%|
+--------------------------------------------+
| GRANT USAGE ON *.* TO `ytt12`@`%`|
| GRANT SELECT ON `ytt_new`.* TO `ytt12`@`%` |
| GRANT `ytt11`@`%` TO `ytt12`@`%`|
+--------------------------------------------+
3 rows in set (0.00 sec)
示例 7:角色的撤销
角色撤销和之前权限撤销类似 。要么 revoke,要么删除角色 , 那这个角色会从所有拥有它的用户上移除 。
-- 用管理员登录,移除ytt2的角色
mysql revoke db_datareader from ytt2;
Query OK, 0 rows affected (0.01 sec)
-- 删除所有角色
mysql drop role db_owner,db_datareader,db_datawriter;
Query OK, 0 rows affected (0.01 sec)
-- 对应的角色也从ytt1上移除掉了
mysql show grants for ytt1;
+----------------------------------+
| Grants for ytt1@%|
+----------------------------------+
| GRANT USAGE ON *.* TO `ytt1`@`%` |
+----------------------------------+
1 row in set (0.00 sec)
至此,我分了 7 个目录说明了角色在各个方面的使用以及注意事项 , 希望对大家有帮助 。
mysql中怎样设置用户和管理员的权限?MySQL管理员应该知道如何设置MySQL用户账号 , 指出哪个用户可以连接服务器,从哪里连接,连接后能做什么 。MySQL 3.22.11开始引入两条语句使得这项工作更容易做:GRANT语句创建MySQL用户并指定其权限 , 而REVOKE语句删除权限 。两条语句扮演了MySQL数据库的前端角色,并提供与直接操作这些表的内容不同的另一种方法 。CREATE和REVOKE语句影响4个表: 中.国站长站
还有第5个授权表(host) , 但它不受GRANT和REVOKE的影响 。中.国.站长站
当你对一个用户发出一条GRANT语句时,在user表中为该用户创建一条记录 。如果语句指定任何全局权限(管理权限或适用于所有数据库的权限),这些也记录在user表中 。如果你指定数据库、表和列级权限,他们被分别记录在db、tables_priv和columns_priv表中 。
站.长站
用GRANT和REVOKE比直接修改授权表更容易些,然而,建议你阅读一下《MySQL安全性指南》 。这些表异常重要 , 而且作为一名管理员,你应该理解它们如何超越GRANT和REVOKE语句的功能水平 。
站.长站
在下面的章节中,我们将介绍如何设置MySQL用户账号并授权 。我们也涉及如何撤权和从授权表中删除用户 。Chinaz
你可能也想考虑使用MySQLACCESS和mysql_setpermission脚本 , 它是MySQL分发的一部分,它们是Perl脚本,提供GRANT语句的另一种选择设置用户账号 。MySQL_setpermission需要安装DBI支持 。

推荐阅读