MySQL 通过客户端连接失败 1130

错误描述

使用root用户名无法通过客户端来访问到MySQL服务。
在这里插入图片描述

推理

MySQL8.0中,root用户不能够通过客户端访问到MySQL服务,是因为root的权限过大,存在权限安全隐患。我们可以通过root用户来创建权限较大的用户,再通过数据库客户端访问服务。

创建用户及分配权限

# 切换数据库
use mysql;
# 创建用户
create user 'virgil'@'%' IDENTIFIED BY 'v*0n$kZR';
# 分配角色
GRANT ALL PRIVILEGES ON *.* TO 'virgil'@'%';

再通过virgil用户来连接MySQL服务

在这里插入图片描述

笔记

1.创建用户:
# 指定ip:192.118.1.1
create user 'virgil'@'192.118.1.1' identified by '123';
# 指定ip:192.118.1.
create user 'virgil'@'192.118.1.%' identified by '123';
# 指定任何ip
create user 'virgil'@'%' identified by '123';

2.删除用户
drop user '用户名'@'IP地址';


3.修改用户
rename user '用户名'@'IP地址' to '新用户名'@'IP地址';

4.修改密码
set password for '用户名'@'IP地址'=Password('新密码');
#查看权限
show grants for '用户'@'IP地址'

#授权 mjj用户仅对db1.t1文件有查询、插入和更新的操作
grant select ,insert,update on db1.t1 to "virgil"@'%';

# 表示有所有的权限,除了grant这个命令,这个命令是root才有的。
grant all privileges  on db1.t1 to "virgil"@'%';
#mjj用户对db1数据库中的文件执行任何操作
grant all privileges  on db1.* to "virgil"@'%';
#mjj用户对所有数据库中文件有任何操作
grant all privileges  on *.*  to "virgil"@'%';
 
#取消权限
 
# 取消mjj用户对db1的t1文件的任意操作
revoke all on db1.t1 from 'virgil'@"%";  

# 取消来自远程服务器的mjj用户对数据库db1的所有表的所有权限

revoke all on db1.* from 'virgil'@"%";  

取消来自远程服务器的mjj用户所有数据库的所有的表的权限
revoke all privileges on *.* from 'virgil'@'%';
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值