Mysql8.0.15真难用,修改root,创建用户配置数据库远程权限

主项目用了mysql8.0.15,为了保持一致小项目mysql驱动也改了8.0.15,在小项目服务器上重装一套mysql,前面还好,创建新用户并授权远程操作单个数据库权限真的折磨我1个小时,分享一下下次不用百度,百度来的也不好使,哎!!!

直接干货,不说安装;

1、修改root密码

vim /etc/my.cnf 在[mysqld] 最后增加skip-grant-tables 跳过密码登陆

systemctl restart mysqld 重启mysqld

2、mysql -uroot -p 直接回车 进入

然后修改密码

mysql> SET PASSWORD FOR 'root'@'localhost' = '123uuu';

然后更改my.cnf配置 删除skip-grant-tables 否则后来设置密码会报错

 
[mysqld]
#增加
character-set-server = utf8mb4

#增加
[mysql]
default-character-set = utf8mb4
#增加
[client]
default-character-set = utf8mb4

创建用户

CREATE USER 'spadmin'@'localhost' IDENTIFIED BY 'spadmin';

会报错

在my.cnf增加

#增加为了能够创建新用户 否则创建新用户会error

default_authentication_plugin=mysql_native_password

因为MySQL8默认的认证插件是caching_sha2_password,很多客户端都不支持,可将默认的认证插件修改为mysql_native_password,在配置文件中配置default_authentication_plugin=mysql_native_password。

增加后创建用户成功。分配数据库权限

将想修改的用户的host 从localhost改为%

GRANT ALL ON 数据库名称.* TO 'ftspider2'@'%'; #授权成功

flush privileges; #刷新一下

已经可以连接了 !!!

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();