MySQL用户与权限数据表


用户权限表

在MySQL中,权限分配是通过一系列的数据表来进行管理的。用户的名称、密码和权限等内容存储在MySQL系统数据库mysql的user表中。

用户管理

mysql.user表中的User、Host、Password字段分别存储了用户的名称、登录主机和密码,自MySQL5.7开始,Password字段由Authentication_string代替。

使用示例

1、创建用户并设置登录密码。

1.1、使用create user命令创建用户。

mysql

1.2、查看mysql.user表,已有新增用户的记录,其中密码字段Password的内容已加密。

mysql

2、修改用户登录密码。

2.1、使用set password或alter user命令修改用户密码。

mysql

2.2、直接修改user表的Password或Authentication_string字段可达到同样效果,密码需要使用password函数加密。

mysql

权限管理

mysql.user表中以_priv结尾的字段存储了用户的权限信息。例如Delete_priv表示用户的delete权限,Y表示具有相应权限,N表示无此权限。

使用示例

1、查看并设置用户权限。

1.1、查看用户权限(新增用户无任何权限,所有权限显示为N)。

mysql

1.2、使用grant all命令为用户授权。

mysql

1.3、再次查看用户权限,除了Grant_priv外的权限均已变为Y。Grant_priv为执行grant命令的权限,若要用户具有Grant_priv权限,可在grant命令结尾添加子命令with grant option。

mysql

2、修改用户权限。

2.1、使用命令修改用户权限。

mysql

2.2、再次查看用户权限。

mysql

2.3、直接修改user表的相应权限字段可达到同样效果。

mysql

发表评论

评论数量:0