MySQL用户表详解(mysql.user)

MySQL是一个多用户管理的数据库,可以为不同用户分配不同的权限,分为root用户和普通用户,root用户为超级管理员,拥有所有权限,而普通用户拥有指定的权限。

MySQL是通过权限表来控制用户对数据库访问的,权限表存放在mysql数据库中,主要的权限表有以下几个:user,db,host,table_priv,columns_priv和procs_priv,先带你了解的是user表。

用户列(用户连接MySQL数据库需要输入的信息)

Host:主机名,双主键之一,值为%时表示匹配所有主机。User:用户名,双主键之一。Password:密码名。

Host   User   Password  
%   domain_check   *55B565DA3839E5955A68EA96EB735  
localhost   domain_check   *55B565DA3839E5955A68EA96EB735  
127.0.0.1   domain_check   *55B565DA3839E5955A68EA96EB735  
126.26.98.25   domain_check   *55B565DA3839E5955A68EA96EB735  
localhost          
::1   root   *26C378D308851D5C717C13623EFD6  
localhost   root   *26C378D308851D5C717C13623EFD6  
127.0.0.1   root   *26C378D308851D5C717C13623EFD6  

(root,%),表示可以远程登录,并且是除服务器外的其他任何终端
(root,localhost),  表示可以本地登录,即可以在服务器上登陆
(root,127.0.0.1 ),表示可以本机登陆,即可以在服务器上登陆
(root,sv01),表示主机名为sv1可以登陆,sv01具体指的哪台机器,可以在cat /etc/hostname查看
(root,::1) ,  表示本机可以登陆, 看密码都是相同嘛,具体::1代表意义,待查

权限列

权限列决定了用户的权限,描述了用户在全局范围内允许对数据库和数据库表进行的操作,字段类型都是枚举Enum,值只能是Y或N,Y表示有权限,N表示没有权限。

权限字段名称   备注说明  
Select_priv   确定用户是否可以通过SELECT命令选择数据  
Insert_priv   确定用户是否可以通过INSERT命令插入数据  
Delete_priv   确定用户是否可以通过DELETE命令删除现有数据  
Update_priv   确定用户是否可以通过UPDATE命令修改现有数据  
Create_priv   确定用户是否可以创建新的数据库和表  
Drop_priv   确定用户是否可以删除现有数据库和表  
Reload_priv    确定用户是否可以执行刷新和重新加载MySQL所用各种内部缓存的特定命令,包括日志、权限、主机、查询和表重新加载权限表  
 Shutdown_priv   确定用户是否可以关闭MySQL服务器在将此权限提供给root账户之外的任何用户时,都应当非常谨慎  
Process_priv    确定用户是否可以通过SHOW PROCESSLIST命令查看其他用户的进程   
File_priv    确定用户是否可以执行SELECT INTO OUTFILE和LOAD DATA INFILE命令  

安全列

安全字段名称   备注说明  
ssl_type   支持ssl标准加密安全字段  
ssl_cipher   支持ssl标准加密安全字段  
x509_issuer   支持x509标准字段  
x509_subject   支持x509标准字段  
password_expired   密码是否过期。Y:说明该用户密码已过期 N:没有过期  
plugin   5.5.7开始,mysql引入plugins以进行用户连接时的密码验证,plugin创建外部/代理用户  
authentication_string   通过authentication_string可以控制两者的映射关系,(PAM plugin等,PAM可以支持多个服务名)  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/262e0a77bce79504f966adfbb7b06714.html