MySQL用户管理

MySQL服务器通过权限表来空值用户对数据库的访问,权限表存放在mysql数据库中,由mysql_install_db 脚本初始化,存储账户权限信息表主要有:user,db,host,tables_priv,columns_priv和procs_priv.

user表是MySQL中最重要的一个权限表,其中的字段大致分为四类:用户列,权限列,安全列和资源控制列。

其中用户列包括:Host、User、authentication,分别表示主机名、用户名、密码,其中User和Host为User表的联合主键。当用户与服务器之间建立连接时,输入的账号信息中的用户名称、主机名和密码必须匹配User表中对应的字段。

db表和host表

db表和host表是MySQL数据中非常重要的权限表,db表中存储了用户对某个数据库的操作权限,决定用户从哪个主机存取哪个数据库,host表中存储了某个主机对数据库的操作权限,配合db权限对给定主机上数据库级操作权限做更细致的控制。

tables_priv表和columns_priv表

tables_priv表用来对表设置操作权限,columns_priv表用来对表的某一列设置权限。

tables_priv表中 Host,Db,User和Table_name分别表示主机名,数据库名,用户名和表名。

Grantor表示修改该记录的用户。

Time_priv表示对表的操作权限包括Select ,Insert,Update,Delete,Create,Drop,Grant,References,Index和Alter。

Column_priv字段表示对表中的列的操作权限。

创建user用户:

刷新权限:

FLUSH PRIVILEGES;

修改msql数据库的user表

UPDATE mysql.user set authentication_string =PASSWORD('rootpwd')WHERE User='root'and HOST='localhost';

刷新:

FLUSH PRIVILEGES;

使用SET语句修改root用户的密码

SET PASSWORD=password(‘rootpwd’);

root用户修改普通用户密码

SET语句修改普通用户的密码:

SET PASSWORD FOR ‘user’@‘host’=PASSWORD(‘somepassword’);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值