格式:mysql
grant 权限 on 库 to 用户@'容许登陆的主机' identity by '密码' 拥有受权权限(可选项);sql
权限:ide
all #全部权限spa
usage #没有权限.net
select update delete #个别权限 多个用逗号隔开get
库:it
*.* #全部表io
库.* #单个库class
库.表 #单个表登录
登陆主机:
localhost #仅本地登陆
% #任何主机
192.168.1.% #指定网段
192.168.1.11 #指定主机
受权权限:
with grant option
举例:
授予oschina用户在任何主机登陆对全部表的全部权限登陆密码为123qq...A 及 受权权限
mysql> grant all on *.* to oschina@'%' identified by '123qqq...A' with grant option;
Query OK, 0 rows affected, 1 warning (0.04 sec)
mysql> show grants for oschina@'%'; #查看权限
+----------------------------------------------------------------+
| Grants for oschina@% |
+----------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'oschina'@'%' WITH GRANT OPTION |
+----------------------------------------------------------------+
1 row in set (0.00 sec)
受权用户os1 仅能够本地登陆 仅对oschina库的b1 表拥有 select 和 update 权限
mysql> grant select,update on oschina.b1 to os1@localhost identified by '123qqq...A';
Query OK, 0 rows affected, 1 warning (0.26 sec)
mysql> show grants for os1@localhost;
+-------------------------------------------------------------+
| Grants for os1@localhost |
+-------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'os1'@'localhost' |
| GRANT SELECT, UPDATE ON `oschina`.`b1` TO 'os1'@'localhost' |
+-------------------------------------------------------------+
2 rows in set (0.00 sec)
删除受权用户:
mysql> drop user oschina@'%';
Query OK, 0 rows affected (0.00 sec)
修改用户os1的登陆密码
mysql> set password for os1@localhost=password('123qqq...OS');
Query OK, 0 rows affected, 1 warning (0.00 sec
撤销权限
撤销用户os1 对oschina库下b1的select 权限
mysql> revoke select on oschina.b1 from os1@localhost;
Query OK, 0 rows affected (0.00 sec)
撤销 用户oschina 的受权权限
mysql> revoke grant option on *.* from oschina@'%';