MySQL的系统数据库是“mysql”,不能误操作给删除了,同样“mysql”数据库中的“user”表示系统用户管理表,也不能误操作删除了或者破坏了,如下图所示:
这里不给大家讲语法,只是总结常见的使用(直接上干货,不啰嗦!),语法请查阅自己的教材等资料。
一、MySQL用户权限应用案例-1
(1)查看MYSQL有哪些用户
SELECT USER,HOST FROM USER;
(2)查看已经授权给用户的权限信息
SHOW GRANTS FOR root@'localhost';
二、MySQL用户权限应用案例-2
建立个lily用户,密码为123,并授予其所有数据库和表的权限,能够使其在本机登录。
CREATE USER lily IDENTIFIED BY '123';
GRANT ALL PRIVILEGES ON *.* TO 'lily'@'localhost' IDENTIFIED BY '123';
FLUSH PRIVILEGES;
说明:
ON *.* ---- 前个*代表所有数据库;后一个*代表所有的表
三、MySQL用户权限应用案例-3
由于授予lily所有数据库和表的权限太大,回收其所有权限,只授予她db数据库的使用权限
REVOKE ALL PRIVILEGES ON *.* FROM 'lily'@'localhost';
GRANT ALL PRIVILEGES ON db.* TO 'lily'@'localhost' IDENTIFIED BY '123';
FLUSH PRIVILEGES;
四、MySQL用户权限应用案例-4
授予lily用户db数据库的在本机的使用权限,要求她只能查看数据,不能增删改数据
REVOKE ALL PRIVILEGES ON *.* FROM 'lily'@'localhost';
GRANT SELECT ON db.* TO 'lily'@'localhost' IDENTIFIED BY '123';
FLUSH PRIVILEGES;
五、MySQL用户权限应用案例-5
删除创建的lily用户
DROP USER lily@localhost;
六、MySQL用户权限应用案例-6
创建jerry用户,授予其所有主机,所有数据库和表的访问权限,并且jerry用户为特权管理用户,能给其他用户授权。
CREATE USER jerry IDENTIFIED BY '123';
GRANT ALL ON *.* TO 'jerry'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
说明:
'jerry'@'%' ----- %代表所有的主机
七、MySQL用户权限应用案例-7
使用lily用户登录,并修改当前用户密码。
步骤1:登录
步骤2:登录后
步骤3:修改密码
SET PASSword = PASSWORD('111');
如图所示: