【发布时间】:2019-03-18 18:30:36
【问题描述】:
SQLSTATE[HY000] [2002] 连接尝试失败,因为 关联方在一段时间后没有正确响应,或 建立连接失败,因为连接的主机未能 回应。 (SQL: SELECT * FROM users)
我想连接到本地项目中的远程数据库,但是当我这样做时,我得到了上面列出的错误。它适用于我的另一个数据库(来自本地主机),我如何连接我的远程服务器数据库?
database.php
'mysql2' => [
'driver' => 'mysql',
'host' => 'domain.com',
'port' => '3306',
'database' => 'mybd',
'username' => 'username',
'password' => 'password',
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'options' => ['mode' => 'ssl'],
'strict' => false,
'engine' => null,
]
控制器
public function test()
{
$users = DB::connection('mysql2')->select("SELECT * FROM users");
dd($users);
}
【问题讨论】:
-
本地开发用什么? Xampp 或 vm 或 docker
-
远程数据库是否允许您连接 SQL Workbench?我的猜测是您启用了某种远程块。如果您使用 Cpanel,您可以登录并在
Remote MySQL下查看如果您自己托管,您可以查看 This StackOverflow question -
在您的远程服务器上执行 dbms 服务器,侦听公共网络或仅侦听本地主机。您的似乎不对公共网络开放(或者如果您正在使用局域网)
-
@abdulla_malik 我正在使用 xampp
-
@SuitBoyApps 我已添加主机访问权限
标签: php mysql database laravel remote-access