mysql8 设置密码规则后还是不能将密码设置为‘root’吗?还有root用户不能设置远程访问权限吗?

mysql8 设置密码规则后还是不能将密码设置为‘root’吗?可以设置为1234 就是不能设置为root! 还有root用户不能设置远程访问权限吗?必须要新建一个用户,然后给这个用户赋权限才行。

GRANT all ON . TO 'root'@'%' WITH GRANT OPTION; 这样死也不行,一直报You are not allowed to create a user with GRANT错误

root用户不允许远程登录 可以新建一个用户 给予所有权限就是 和root效果一样

打开 mysql 数据库
use mysql

检索 user 和 host 字段
select user, host from user;

如果没有 user=root ,host = % 的用户,则执行下面语句,将localhost修改为%:

update user set host='%' where user='root';

给 root 授权(所有权限)
grant all privileges on . to 'root'@'%' identified by '1234' with grant option;

让赋予的权限立即生效
flush privileges;

3.修改密码,首先shell> mysql -uroot -p连接上数据库(此时要输入登录密码,就是上一条注意事项提到的默认密码),然后用mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourPassword';修改密码,注意:MySQL的 validate_password 插件默认安装。这将要求密码包含至少一个大写字母,一个小写字母,一个数字和一个特殊字符,并且密码总长度至少为8个字符。如果想关闭这个插件的话,只需要在 /etc/my.conf 中 的 [mysqld] 中增加如下的配置:validate_password=OFF;

作者:冯陈褚卫
来源:CSDN
原文:https://blog.csdn.net/m0_37754764/article/details/88015125
版权声明:本文为博主原创文章,转载请附上博文链接!