《Mysql - 用户管理》
一: 新建用户
CREATE USER 用户名@'允许访问IP(%或者空代表所有)' identified by '密码’; - 用户名长度不能超过 16 字符。 - 大小写敏感。 Demo - CREATE USER ‘hive'@'%' identified by 'hive'; QA: - 设置完成后会自动更新授权表,直接使用密码登录即可。 - 看不到任何可操作性的表(因为没有为用户设置权限,所以用户不能操作数据库
二: 查看权限
查看自己的全部权限
- show grants;
三: 添加权限
GRANT {权限} TO {用户}; 1.全局(赋予全部权限) - GRANT ALL ON *.* TO 'hive'@'%’;(赋予全部权限) 2.库(赋予库权限) - GRANT ALL ON mydb.* TO 'user'@'host’;(赋予库下所有表权限) 3.表层级(单个表增删改查权限) - GRANT SELECT, INSERT, UPDATE, DELETE ON `hive`.* TO 'hive’@‘*’ QA:(修改完之后刷新权限关系) - flush privileges; #刷新mysql系统权限关系表
四: 回收权限
REVOKE {权限} TO {用户}; 1.全局(回收全部权限) - REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'hive'@'%'; 2.库(回收库权限) - REVOKE ALL ON mydb.* TO 'user'@'host’;(赋予库下所有表权限) 3.表层级(单个表增删改查权限) - REVOKE SELECT, INSERT, UPDATE, DELETE ON `hive`.* TO 'hive’@‘*’ QA:(修改完之后刷新权限关系) - flush privileges; #刷新mysql系统权限关系表
五:删除用户
QA: - 删除前,前提 应该 回收 用户 所有权限 DROP USER 用户名@'访问主机';
QA
QA: 一:数据库用户 ROOT 和 其他用户有什么区别么? - Mysql root 和 linux root 不是一回事, - 数据库 root 只不过是初始化时候自己建立的一个用户而已,随时可以删除/修改。 二: 在 Mysql 中,数据库权限是怎么样的呢? - MySQL 总体是使用了白名单机制 - 明确规定了哪些用户能做哪些事,但是不能规定哪些用户不能做那些事。