目录
用来管理数据库用户,控制数据库的访问权限
主要俩个方面 ,控制哪些用户可以访问,控制每个用户具有什么样的访问权限
USE mysql
SELECT *FROM user
CREATE UESR '用户名'@'主机名' IDENTIFIED BY '密码' ;
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
DROP USER '用户名'@'主机名';
首先打开datgrip,然后找到MySQL -> user
创建itcast ,只能够在当前主机localhost 访问,密码 123456
create user 'itcast'@'localhost'identified by '123456';
可以通过命令行访问一下
windows +R 打开命令行 ,输入cmd,然后输入mysql -u itcast -p
输入设置的密码123456,通过show databases,查询所有数据库 ,这个用户只进行了创建,并未分配权限。

创建用户heima ,可以在任意主机访问数据库,密码123456
create user 'heima'@'%' identified by '123456';
注意:@后面没有空格,后面加个 '%' 代表任意主机都可以访问
修改用户heima的访问密码为1234
alter user 'heima'@'%' identified with mysql_native_password by '1234';
可以通过打开控制台测试一下密码还否修改
删除itcast@localhost用户
drop user 'itcast'@'localhost';
——主机名可以使用%通配。
——这类SQL开发人员操作的比价少,主要是DBA(数据库管理员)使用
SHOW GRANTS FOR '用户名'@'主机名'
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
查询权限
show grants for 'heima'@'%';

授予权限
grant all on itcast,* to 'heima'@'%';

撤销权限
revoke all on itcast.* from 'heima'@'%';

——多个权限之间,使用逗号分割
——授权时,数据库和表名之间可以使用*进行分配,代表所有