(1)登录 MySQL 数据库
(2)管理 MySQL 对象(库、表)
基本格式:xun@'白名单
白名单:地址列表,允许白名单的 ip 登录和管理 MySQL
xun@'localhost' :用户xun能够通过本地登录 MySQL
xun@'10.0.0.%' :用户xun能够通过10.0.0.xx/24网段登录MySQL
xun@'10.0.0.5%' :用户xun能够通过50-59段的地址登录 MySQL
xun@'10.0.0.0/255.255.254.0' :用户xun能够通过10.0.0.0/23网段登录 MySQL
xun@'%' :用户xun能够通过所有网络地址登录 MySQL
-- 新增一个 test 用户,密码为123456,并且能够通过10.0.0.xx/24网段登录 MySQL
create user 'xun'@'10.0.0.%' identified by '123456';
-- 查询用户、白名单、密码
select user,host from mysql.user;
alter user 'test'@'10.0.0.%' identified by '111111';
drop user 'test'@'10.0.0.%' ;
ALL, SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE
使用超级管理员用户root给其他用户授权
-- grant 权限 on 能够操作的库或表 to 用户 identified by 密码;
grant select, update, delete, insert on school.* to 'test'@'10.0.1.%';
注意
8.0之前,可以自动创建用户并授权
grant all on *.* to 'xun'@'10.0.0.%' identified by '123';
8.0之后,必须要先创建用户,才能给用户授权
create user 'xun'@'localhost' identified by '123456';
grant all on *.* to xun@'localhost';
show grants for 'xun'@'localhost';
revoke delete on 'test'.* from xun@'localhost';
show grants for 'xun'@'localhost';