症状:
mysql -h abcd -u user -p -D db 。 artisan migrate 。 SQLSTATE[HY000] [2003] Can't connect to MySQL server on 'abcd' (13) 我究竟做错了什么? (我为自己的后代回答。)
这个问题的关键是(13) ,意思是“Permission Denied”(通过perror )。 因为我可以从命令行进行连接,所以权限必须位于Web应用程序中。 由于我知道Web应用程序中的证书与命令行中的证书相匹配,唯一剩下的就是Web服务器。
通过strace ,我发现SELinux阻止了它。 修理:
sudo setsebool -P httpd_can_network_connect=1
这永久设置SELinux允许networking连接的httpd。