项目什么都没动,突然发现无法连远程的数据库了,只能连本地的,折腾了半天,连本地的都连不上了,简直像遇到了奇异事件。
用java程序连了一下,默认连不上,需要把usessl设为false,但是php对应的sslmode设为disable并不起作用。
尝试修改wait_timeout和connect_timeout也都无效,只是让等待的时间更长了。
直到在老同事刘明的提醒下,去查看laravel的日志,发现了这么一句:Unexpected server respose while doing caching_sha2 auth
于是,按这个问题去搜索,找到了https://www.cnblogs.com/qichao123/p/9719470.html
进到mysql,通过SELECT user,host,plugin FROM mysql.user;
确认我用的当前用户没问题,是mysql_native_password,于是继续配置my.cnf中的mysqld,添加:
default_authentication_plugin=mysql_native_password
回来测试成功。