mysql库负责记录授权信息,主要由以下表格进行控制:
表名 | 权限管理情况 |
---|---|
user | 记录已有授权用户及全局权限 |
db | 记录已有授权用户对数据库的访问权限 |
tables_priv | 记录已有授权用户对表的访问权限 |
columns_priv | 记录已有授权用户对字段的访问权限 |
1. 创建新用户:
> create user 'username'@'%' identified by 'password';
其中username
为自定义的用户名;% 为任意登录地址
,为localhost时表示本机,或者填写指定的IP地址;paasword
为密码
2. 为用户授权:
> grant all privileges on *.* to 'username'@'%' with grant option;
如果要授予所有的权限则使用all
,指定权限则使用select,insert,update
等;
*.*
第一个*
表示所有数据库,第二个*
表示所有表;
username
为指定的用户;%
为任意登录的地址。
3.撤销权限
> revoke all on *.* from 'username'@'%';
3. 刷新权限:
> flush privileges;
4.查看用户权限
>show grants for 'username'@'%';
注:mysql8以上版本,需要先创建用户,再进行授权操作