MySQL用户管理

如果只能使用root用户,会存在安全隐患。这时,需要使用MySQL用户管理。

1.用户

1.1用户信息

所有的用户信息都存储在mysql数据库的user表中

查看user信息:

select * from user \G;

查看相关信息:

host:表示这个用户可以从哪个主机登录,如果是localhost,表示只能从本机登录

user:用户名

authentication_string:用户密码通过caching_sha2_password插件加密后的

*_priv:用户拥有的各种权限

1.2创建用户

语法:create user ‘用户名’ @ ‘登陆主机/ip’ identified by ‘密码’;

例:

新建一个用户其实就是向user表中插入数据。

可以使用这个新用户进行mysql本地登陆,但是不能进行远程登陆。

1.3删除用户

drop user ‘用户名’@’’登陆主机’;

1.4创建一个允许远程登陆的用户

create user ‘用户名’@’%’ identified by ‘123456’;

创建一个允许从任何主机登陆的用户。

1.5修改用户密码

自己改自己的密码:

set password=password(‘新密码’);

root用户修改指定用户的密码:

set password for ‘用户名’@’主机名’=password(‘新密码’);

1.6刷新

在每次对用户进行操作后,通过flush privileges进行刷新。

2.数据库权限

2.1给用户权限

grant 权限列表 on 库.表名 to ‘用户名’@’登陆位置’ [identified by ‘密码’];

identified by是可选,若用户存在是修改用户密码,否则是创建用户。

新用户默认能看到的数据库:

root用户所能看到的数据库:

将root下的root_test库的全部权限给新用户:

grant all on root_test.user to ‘lzl’@’localhost’;

此时,新用户就能看到root_test库中的表和表中数据。

也能对表中数据进行修改,插入等操作。

2.2查看用户权限

show grants for ‘用户名’@’登陆位置’;

2.3回收权限

revoke 权限列表 on 库,对象名 from ‘用户名’@’登陆位置’;

例:

回收新用户的对root_test数据库的插入权限

此时,新用户的权限就会发生变化

无法进行insert

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值