安装环境:阿里云服务器+ubuntu20+mysql8
然后会开始一个配置,这个不难就不写了。 ps:出现的问题
这里有个问题,root设置的密码是无效的【我安装时出现这个问题,不确定是怎么引起的】密码策略建议选择0(low),其它的都太坑了有输出就是成功
1.创建用户,【%】表示所有人可以连接,如果只需要本地访问,可以设置为127.0.0.1
create user '用户名'@'%' identified by '密码';2.授权
grant all privileges on *.* to '用户名'@'%' with grant option;3.刷新
flush privileges;4.开启mysqld的远程登录,ubuntu的配置在/etc/mysql/mysql.conf.d/mysqld.cnf
vim /etc/mysql/mysql.conf.d/mysqld.cnf 修改bind-address值为0.0.0.0,或者把bind-address注释掉都是可以的 bind-address = 0.0.0.01.配置后用户和授权后还是无法远程登录,确认防火墙端口已开,解决方法见【四. 配置 4小段】
2.修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,这是是因为密码策略问题,解决如下:
查看密码策略 SHOW VARIABLES LIKE 'validate_password%'; 修改密码策略(其实这就是我建议初始配置密码策略选择0(low)的原因) set global validate_password.policy=0; 刷新 flush privileges; 这个时候去修改密码就没有问题了3.在完成所有配置后,使用远程mysql工具访问,出现2059 Authentication plugin错误,这是mysql8后才有的问题,解决如下:
查看所有用户和信息,这个时候你会发现出现问题的账号`authentication_string`是会出现乱码和异常的 SELECT `user`, `host`, `authentication_string`, `plugin` FROM mysql.user; 修改密码解密规则【%是代表所有人可以访问】 ALTER USER '用户名'@'%' IDENTIFIED BY '密码' PASSWORD EXPIRE NEVER 更新密码 ALTER USER '用户名'@'%' IDENTIFIED WITH mysql_native_password BY '密码'; 刷新 flush privileges; 再连接mysql应该就可以了