php – 常规错误:20003 Adaptive Server连接超时[20003](严重级6)
作者:互联网
嗨以下是我得到的错误: –
PDOException: SQLSTATE[HY000]: General error: 20003 Adaptive Server connection timed out [20003] (severity
6) [(null)] in /var/www/html/web/vendor/laravel/framework/src/Illuminate/Database/Connection.php:335
我试图从Linux laravel 5.2代码片段连接到Windows上的MS-SQL-Server.
> Windows机器上有防火墙禁用.
>我能够在ms sql默认可用端口上的Windows IP上telnet.
>我没有使用免费的TDS,所以这不是TDS的重复,甚至没有回答这个问题.
> centos 7,能够ping到IP.没有连接问题.
>从终端运行脚本,因此不必出现超时问题.
在我尝试获取5k记录之前,我的thot查询需要更长的时间,但即使我将限制减少到100然后也得到相同的错误.
我的网络连接速度很快,服务器硬件配置很高.
我已经尝试了下面链接给出的所有解决方案,但是我获得了成功,但是当我的脚本运行时面临上述问题.
我的脚本在本地运行良好.但是当我将代码提升为dev时面临问题.
解决方法:
问题似乎与查询的执行时间有关.
我遇到了同样的问题,我在config / databases.php文件中更改了超时设置后解决了这个问题.
使用以下代码:
'options' => [
PDO::ATTR_TIMEOUT => 300, // up to 5 minutes
],
完整的配置应该是:
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'prefix' => '',
'options' => [
PDO::ATTR_TIMEOUT => 300,
],
],
标签:php,laravel-5,sql-server,linux,freetds 来源: https://codeday.me/bug/20190823/1701972.html