如何在给定场景下为某用户授权?
如何定义MySQL数据库账号
账号组成
用户名@可访问控制列表
- %:表示可以从所有外部主机访问
- 192.168.1.%:表示可以从192.168.1网段访问
- localhost:表示可以从DB服务器本地访问
注意:
- MySQL5.7之前用户名长度限制为最多16字节,MySQL5.7之后用户名长度限制为最多32字节。
- %不包括localhost,即希望从DB服务器本地访问需要显式指定localhost进行授权
- 未指定可访问控制列表时,默认为%,非常不安全。
- 如果一个用户名有多个不同的可访问控制列表对应的不同账号时,MySQL会进行最精确匹配。
- 客户端使用账号时只需要指定用户名,而可访问控制列表部分会由MySQL客户端自动识别补全。
账号创建
使用CREATE USER
命令
CREATE USER user@ip IDENTIFIED BY 'password';
注意: MySQL5.7之前可以使用GRANT命令为账号授权的同时创建账号,但5.7之后不能如此做。只能先进行创建,再进行授权。
如何为账号授权
常用的账号权限
类别 | 语句 |
---|