连接到本地网络上的远程数字海洋数据库服务器时,laravel mysql超时

时间:2017-01-24 06:45:43

标签: mysql laravel doctrine digital-ocean

我的laravel安装在连接到MySQL数据库时遇到了一些问题。我也在使用laravel学说。

mysql服务器位于一个单独的数字海洋小滴上。

Mysql服务器侦听非标准端口,仅绑定到本地网络接口(例如10.131.xx.xx)

mysql数据库有一个非root用户,配置了主机访问权限

mysql服务器配置了iptables,只允许webserver ip连接到绑定ip上的非标准端口

我的.env文件配置为

DB_CONNECTION=mysql
DB_DATABASE=$CORRECT_USER
DB_HOST=$CORRECT_TARGET_LOCAL_IP
DB_USERNAME=$CORRECT_DB_USR
DB_PASSWORD=$CORRECT_PASS
DB_PORT=$CORRECT_PORT

理智检查我的环境

我已尝试直接连接到mysql,如下所示

  

$ mysql -u $ CORRECT_DB_USR -p $ CORRECT_PASS -h $ CORRECT_TARGET_LOCAL_IP   --port = $ CORRECT_PORT $ CORRECT_USER

正确连接

以及如下所示远程登录目标

  

$ telnet $ CORRECT_TARGET_LOCAL_IP $ CORRECT_PORT

打印

  

逃脱角色是'^]'。 [   我的-OS-和VERSION1" || xgpK(iqJmysql_native_password

但是当我运行命令php artisan doctrine:schema:create

显示以下错误

  

[Doctrine \ DBAL \ Exception \ ConnectionException] An   驱动程序中出现异常:SQLSTATE [HY000] [2002]连接离子   超时

                                              [Doctrine\DBAL\Driver\PDOException]             SQLSTATE[HY000] [2002]
     

连接超时

                                              [PDOException]                                  SQLSTATE[HY000] [2002] Connection timed

out

我已经将ufw.log和mysql错误日志保留在mysql服务器上,防火墙没有丢弃数据包,也没有从mysql日志中抛出错误的凭据错误

任何人都知道这可能是什么

0 个答案:

没有答案