【发布时间】:2020-03-08 19:28:40
【问题描述】:
我在 digitalocean 中部署了我的 php laravel 项目(5.8 版)。我使用远程 SQL 服务器作为数据库。我可以通过 SQL SERVER MANAGEMENT 连接到远程 sql server,但是当我在 laravel 中使用时,我得到了这个错误
"message": "SQLSTATE[HY000] Unable to connect: Adaptive Server is unavailable or does not exist (192.168.x.xxxx:1433) (severity 9) (SQL: select top 1 * from [users] where [email] = )",
这是我的 .env 设置
DB_CONNECTION=sqlsrv
DB_HOST=192.168.0.xxx
DB_PORT=1433
DB_DATABASE=xxxx
DB_USERNAME=xxx
DB_PASSWORD=xxxx
<?php
return [
'default' => env('DB_CONNECTION', 'sqlsrv'),
'connections' => [
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => env('DB_HOST', '192.168.x.xxx'),
'port' => env('DB_PORT', '1433'),
'database' => env('DB_DATABASE', 'xxx'),
'username' => env('DB_USERNAME', 'xxx'),
'password' => env('DB_PASSWORD', 'xxxx'),
'charset' => 'utf8',
'prefix' => '',
],
],
'migrations' => 'migrations',
'redis' => [
'client' => 'predis',
'default' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => 0,
],
],
];
【问题讨论】:
-
你能尝试连接另一个程序吗? SQL 服务器工具,Navicat 或类似的东西。
-
是的,我尝试使用 Navicat 并且可以连接到 sql remote
-
你能签入php.ini extension=php_pdo_sqlsrv_7x_ts.dll extension=php_sqlsrv_7x_ts.dll
-
我使用的是 php 7.2,但在 php.ini 中找不到 extension=php_pdo_sqlsrv_7x_ts.dll,我可以手动添加吗?
-
是的,您可以添加。
标签: php sql-server database laravel digital-ocean