服务器mysql授权用户 和 修改mysql密码 和 解决Access denied for user 'root'@'localhost' (using password: YES)

本文详细介绍如何在MySQL中授权用户访问权限,包括全局和特定IP的授权方式,以及如何修改本地和远程用户的密码。同时,文章还提供了密码策略调整的方法,确保密码设置符合安全要求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

服务器mysql授权用户
(1)任意主机以用户root和密码mypwd连接到mysql服务器

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
flush privileges;

(2)IP为192.168.133.128的主机以用户myuser和密码mypwd连接到mysql服务器

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.133.128' IDENTIFIED BY 'mypwd' WITH GRANT OPTION; 
flush privileges;

修改本地mysql密码:

set password for root@localhost = password('123');
//或者
ALTER USER "root"@"localhost" IDENTIFIED  BY "你的新密码";

修改所有mysql密码:

set password for root@'%' = password('123');
//或者
ALTER USER "root"@"%" IDENTIFIED  BY "你的新密码";
//或者(mysql8.0)
use mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码'; 
FLUSH PRIVILEGES;

如果报错Your password does not satisfy the current policy requirements
先修改密码强度:

set global validate_password_policy=0;

修改密码强度方法二:

查看 mysql 初始的密码策略,
输入语句 “ SHOW VARIABLES LIKE 'validate_password%'; ” 进行查看
首先需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 即可,输入设值语句 “ set global validate_password_policy=LOW; ” 进行设值
设置 validate_password_length 的全局参数,输入设值语句 “ set global validate_password_length=4; ” 进行设值

解决Access denied for user 'root'@'localhost' (using password: YES)
找my.cnf文件,linux在/etc/my.cnf
在[mysqld]后添加skip-grant-tables
使用 set password for设置密码无效,且此后登录无需键入密码
重启MySQL服务器

如果mysql8.0版本报错 Table 'mysql.role_edges' doesn't exist
执行一下(升级一下)

mysql_upgrade -u root -p;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值