问题
将centos上安装sql很顺利,但是在ubuntu上遇到了很多问题。
首先mysql_secure_installation出错,并且必须要sudo mysql -u root -p才能进入mysql。然后设置密码的时候密码不符合要求,修改权限后还是不能远程登录。
解决
首先密码不符合要求的问题参考了这篇博客mysql5.7设置简单密码报错ERROR 1819 (HY000)
首先查询有效密码的要求
SHOW VARIABLES LIKE 'validate_password%';
然后修改为自己的需求
#密码至少要包含的小写字母个数和大写字母个数
set global validate_password.mixed_case_count = 0;
#包含数字个数
set global validate_password.number_count = 0;
set global validate_password.policy=LOW;
#长度
set global validate_password.length = 3;
flush privileges;
现在密码修改没有问题了。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
#注:如果你已经执行了update user set host='%' where user='root';这一句,则以上命令的localhost改为%,如下:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'your_password';
但是使用navicat远程连接还是会出现问题10061
首先不能忘记修改host限制
update user set host='%' where user='root';
flush privileges;
然后如果还是连接不上
编辑mysql配置文件,把其中bind-address = 127.0.0.1注释掉
(语句前加上#)
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
最后能成功连接!好折腾!