【发布时间】:2019-10-18 08:35:44
【问题描述】:
在尝试标准 Laravel 数据库配置 sqlsrv 模板失败后,我已转向直接 PHP odbc_connect() 方法,尝试通过 Laravel 5.6 连接到我的工作 SQL Server。
我正在公司防火墙后面构建仪表板,另一位开发人员已使用以下方法成功创建了连接:
$resource = odbc_connect('Driver={ODBC Driver 13 for SQL Server};Server=xxxxxxxxxx;Trusted_Connection=yes;ApplicationIntent=ReadOnly', null, null)
上面的 odbc_connect() 设置为使用我登录的当前网络 AD Windows 身份验证,但是,我从 Laravel 收到以下 ErrorException:
odbc_connect(): SQL error: [Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired, SQL state S1T00 in SQLConnect
php信息:
- ODBC 库:unixODBC
- PDO 驱动程序:mysql、odbc、sqlite、sqlsrv
- PDO_ODBC:启用,严格匹配
- PHP 版本 7.1.10
我可以成功连接使用 Windows 身份验证方法的 SQL Server GUI 客户端(RazorSQL 和 Navicat)。请注意,我运行的是 MAC OSX Sierra。
任何帮助将不胜感激。
【问题讨论】:
-
Login timeout expired似乎需要更多时间来连接。
标签: php sql-server laravel