MYSQL 创建用户并授权

通过CREATE USER命令进行创建用户
CREATE USER 'username@host' [IDENTIFIED BY 'PASSWORD'] 其中密码是可选项;
例子:CREATE USER '[email protected]' IDENTIFIED BY "123";
说明:该方法创建出来的用户只有连接数据库的权限,需要后续继续授权;

=========================================

查询、插入、更新、删除 数据库中所有表数据的权利。
grant select on testdb.* to common_user@'%'
grant insert on testdb.* to common_user@'%'
grant update on testdb.* to common_user@'%'
grant delete on testdb.* to common_user@'%'
或者,用一条 MySQL 命令来替代:
grant select, insert, update, delete on testdb.* to common_user@'%'

创建表、索引、视图、存储过程、函数等权限。
grant create on testdb.* to developer@'192.168.0.%';
grant alter on testdb.* to developer@'192.168.0.%';
grant drop on testdb.* to developer@'192.168.0.%';

操作外键权限。
grant references on testdb.* to developer@'192.168.0.%';

操作临时表权限。
grant create temporary tables on testdb.* to developer@'192.168.0.%';

操作索引权限。
grant index on testdb.* to developer@'192.168.0.%';
 
操作视图、查看视图源代码权限
grant create view on testdb.* to developer@'192.168.0.%';
grant show view on testdb.* to developer@'192.168.0.%';
 

操作存储过程、函数 权限
grant create routine on testdb.* to developer@'192.168.0.%'; -- now, can show procedure status
grant alter routine on testdb.* to developer@'192.168.0.%'; -- now, you can drop a procedure
grant execute on testdb.* to developer@'192.168.0.%';
 
管理数据库的权限。
grant all privileges on testdb to dba@'localhost'
其中,关键字 “privileges” 可以省略


管理所有数据库的权限。
grant all on *.* to dba@'localhost'

查看当前用户(自己)权限:
show grants;
 
查看其他用户权限:
show grants for dba@localhost;

撤销已经赋予给用户权限的权限。
revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:
grant all on *.* to dba@localhost;

revoke all on *.* from dba@localhost;

 

请记得刷新系统权限表;

flush privileges;

 

你可能感兴趣的:(MYSQL,计算机)