通过CREATE USER命令进行创建用户
CREATE USER 'username@host' [IDENTIFIED BY 'PASSWORD'] 其中密码是可选项;
例子:CREATE USER 'john@192.168.189.71' 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;
【MYSQL|MYSQL 创建用户并授权】revoke all on *.* from dba@localhost;
请记得刷新系统权限表;
flush privileges;
推荐阅读
- mysql|InnoDB数据页结构
- javaweb|基于Servlet+jsp+mysql开发javaWeb学生成绩管理系统
- mysql|一文深入理解mysql
- Java毕业设计项目实战篇|Java项目:在线嘿嘿网盘系统设计和实现(java+Springboot+ssm+mysql+maven)
- SQL|SQL基本功(五)--函数、谓词、CASE表达式
- vue|电商后台管理系统(vue+python|node.js)
- Java及基础算法及数据结构|旧笔记整理(MySQL)
- mysql|双非本211硕,无实习无项目,自学大数据开发,秋招上岸
- 数据库|Mysql--InnoDB存储引擎详解
- MySQL学习笔记-9-order by