1、用户管理
A、查询用户
select * from mysql.user;
其中 Host代表当前用户访问的主机, 如果为localhost, 仅代表只能够在当前本机访问,是不可以 远程访问的。 User代表的是访问该数据库的用户名。在MySQL中需要通过Host和User来唯一标识一 个用户。
B、创建用户
案例:create user '用户名'@'主机名' identified by'密码';
create user 'aug'@'kairui' identified by '123456789';
C、修改用户密码
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码' ;
alter user 'aug'@'kairui' identified with mysql_native_password by '1008611';
D、删除用户
DROP USER '用户名'@'主机名' ;
drop user 'aug'@'kairui';
在MySQL、中是需要通过用户名@主机名的方式来进行唯一标识一个用户,主机名也可以使用%通配符
二、实操实验:
A、创建一个abc用户,只能够在当前主机localhost访问,密码为123456;
create user 'abc'@'localhost' identified by '123456';
B、创建一个tab用户,可以在任意主机访问数据库,密码123456;
create user 'tab'@'%' identified by '123456';
C、修改用户tab用户的访问密码为1234;
alter user 'tab'@'%' identified with mysql_native_password by '1234';
D、删除abc@localhost用户
drop user 'abc'@'localhost';
三、权限控制
mysql中定义了很多中权限,常用的就以下几种
权限 | 说明 |
ALL, ALL PRIVILEGES | 所有权限 |
SELECT | 查询数据 |
INSERT | 插入数据 |
UPDATE | 修改数据 |
DELETE | 删除数据 |
ALTER | 修改表 |
DROP | 删除数据库/表/视图 |
CREATE | 创建数据库/表 |
A、查询用户权限
show grants for 'tab'@'%';
B、授予’tab‘@’%‘,用户对emp数据库所有表操作权限
grant all on emp.* to 'tab'@'%';
C、撤销,’tab‘@’%‘,用户对emp数据库的所有权限
revoke all on emp.* from 'tab'@'%';