Hits

mysql 用户权限管理

mysql 用户权限管理

select * from myslq.user // 查询mysql所有用户信息

添加用户

CREATE USER 'user_name'@'%' IDENTIFIED BY 'password';

CREATE USER 'user_name'@'host' IDENTIFIED BY 'password';

授权

GRANT all ON databasename.tablename TO 'username'@'host'

  • all - 用户的操作权限,比如 select,insert,update 等,如果授权所有就是all
  • databasename - 数据库名,
  • tablename - 表名,如果要授权所有数据库和表可以使用 **.*

注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:

GRANT all ON databasename.tablename TO 'username'@'host' with grant option

设置与更改用户密码

set password for 'user_name'@'host' = password('newpassword');

如果是修改当前登录用户密码

set password = password('newpassword')

撤销用户权限

revoke privilege on databases.tablename from 'user_name'@'host';

例如: revoke select on *.* from 'user_name'@'host';

注意:赋予权限和撤销权限,使用 *.* 有时候会失效

具体信息查看:show grants for 'user_name'@'%'; 查看

删除用户

drop user 'user_name'@'host'

Example

// 创建用户
create user 'test'@'localhost' identified by '123456';
// 创建数据库
create database test_db default character set utf8 collate uft8_bin;
// 授权
grant all on test_db.* to 'test'@'localhost';
grant all on test_db.* to 'test'@'192.168.0.0/255.255.0.0' identified by 'aaa123';
// 查询权限
show grants for 'test'@'localhost';

本文链接:参与评论 »

--EOF--

专题「数据库相关知识」的其它文章 »

Comments