语法:‘user_name‘@‘host_name‘ 不包含特殊字符(空格)、通配符(%)时,可以不用引号
保存到user表(全局权限); 其他授权表拥有一致的用户信息(Host、User) 用户名区分大小写,主机名不区分
‘‘@‘localhost‘
支持ip地址(ipv4 & ipv6) 不论是ip地址还是主机名,都可以使用通配符(%、_) 允许ip地址带子网掩码
忽略时,默认‘%‘
#下次连接使用新密码; ALTER USER ‘jeffrey‘@‘localhost‘ IDENTIFIED BY ‘new_password‘ PASSWORD EXPIRE; #指定验证插件并设置密码和有效期; ALTER USER ‘jeffrey‘@‘localhost‘ IDENTIFIED WITH sha256_password BY ‘new_password‘ PASSWORD EXPIRE INTERVAL 180 DAY; #锁定用户 ALTER USER ‘jeffrey‘@‘localhost‘ ACCOUNT LOCK; ALTER USER ‘jeffrey‘@‘localhost‘ ACCOUNT UNLOCK; #限制连接次数和连接方式 ALTER USER ‘jeffrey‘@‘localhost‘ REQUIRE SSL WITH MAX_CONNECTIONS_PER_HOUR 20; #指定明文密码 ALTER USER ‘jeffrey‘@‘localhost‘ IDENTIFIED BY ‘password‘; #能加密就加密,不能加密也行 ALTER USER ‘jeffrey‘@‘localhost‘ REQUIRE NONE; #要求加密连接 ALTER USER ‘jeffrey‘@‘localhost‘ REQUIRE SSL; #要求证书加密,无需指定ssl选项 ALTER USER ‘jeffrey‘@‘localhost‘ REQUIRE X509; #立即过期 ALTER USER ‘jeffrey‘@‘localhost‘ PASSWORD EXPIRE; #密码永不过期 ALTER USER ‘jeffrey‘@‘localhost‘ PASSWORD EXPIRE NEVER; #指定过期时间 ALTER USER ‘jeffrey‘@‘localhost‘ PASSWORD EXPIRE INTERVAL 180 DAY;
创建用户
#创建用户,设置密码过期 CREATE USER ‘jeffrey‘@‘localhost‘ IDENTIFIED BY ‘new_password‘ PASSWORD EXPIRE; #能加密就加密,不能加密也行 CREATE USER ‘jeffrey‘@‘localhost‘ REQUIRE NONE; #要求建立加密连接 CREATE USER ‘jeffrey‘@‘localhost‘ REQUIRE SSL;
删除用户
DROP USER ‘jeffrey‘@‘localhost‘;
授权
授权操作
CREATE USER ‘jeffrey‘@‘localhost‘ IDENTIFIED BY ‘password‘; GRANT ALL ON db1.* TO ‘jeffrey‘@‘localhost‘; GRANT SELECT ON db2.invoice TO ‘jeffrey‘@‘localhost‘; ALTER USER ‘jeffrey‘@‘localhost‘ WITH MAX_QUERIES_PER_HOUR 90;
权限定义
权限 | 备注 |
ALL [PRIVILEGES] |
不包含GRANT OPTION 和 PROXY |
ALTER |
修改表(全局、库、表) |
ALTER ROUTINE |
修改/删除存储例程(全局、库、例程) |
CREATE |
建库、建表(全局、库、表 ) |
CREATE ROUTINE |
创建例程(全局、库) |
CREATE TABLESPACE |
创建、修改、删除表空间、日志文件组(全局) |
CREATE TEMPORARY TABLES |
全局、库 |
CREATE USER |
建用户、删用户、用户改名、收回用户权限(全局) |
CREATE VIEW |
创建、修改视图(全局、库、表) |
DELETE |
全局、库、表 |
DROP |
删库、删表、删视图(全局、库、表) |
EVENT |
|
EXECUTE |
执行存储例程(全局、库、例程) |
FILE |
读、写文件(全局) |
GRANT OPTION |
授权、收回权限(全局、库、表、例程、索引) |
INDEX |
创建索引、删除索引(全局、库、表) |
INSERT |
全局、库、表、列 |
LOCK TABLES |
允许拥有 select 权限用户锁表(全局、库) |
PROCESS |
show processlist |
PROXY |
|
REFERENCES |
创建外键(全局、库、表、列) |
RELOAD |
flush(全局) |
REPLICATION CLIENT |
|
REPLICATION SLAVE |
|
SELECT |
全局、库、表、列 |
SHOW DATABASES |
全局 |
SHOW VIEW |
全局、库、表 |
|
|
|
|
|
全局、库、表 |
|
全局、库、表、列 |
|
“no privileges” |
a
MySQL
13.7.1 Account Management Statements
原文:https://www.cnblogs.com/argor/p/12615320.html