SQLSTATE[HY000] [2002] 连接尝试失败.. - 尝试从本地连接到远程服务器时

问题描述 投票:0回答:2

环境文件:

APP_ENV=local
APP_DEBUG=true
APP_KEY= ...........

DB_HOST=srv3.linuxisrael.co.il
DB_DATABASE= name_of_my_database
DB_USERNAME=moti_winkler
DB_PASSWORD=1234567890

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

路线.php:

use App\User;

Route::get('/', function(){
    User::create(['first_name' => 'moti']);
    return view('welcome');
});

我得到的错误:

Connector.php 第 55 行中的 PDOException:

SQLSTATE[HY000] [2002] A 连接尝试失败,因为连接方未正确连接 一段时间后有响应,或者建立连接失败 因为连接的主机未能响应。

我的问题是:

我正在尝试从我的计算机连接到我的远程 MySQL 服务器

我不明白为什么它不起作用?

我应该做什么才能连接?

我错过了什么?

我正在使用 Laravel 5.1

php mysql laravel laravel-5.1 hosting
2个回答
5
投票
不足为奇。 mysql 套接字很少为来自面向公众的接口的连接保持打开状态。通常mysql端口(3306)只能从专用网络接口访问。

即使套接字打开,也会出现很多问题,包括防火墙妨碍和简单的超时。


0
投票
使用SSH隧道连接远程数据库。

有关 SSH 隧道的更多信息和一些示例:

http://chxo.com/be2/20040511_5667.html

© www.soinside.com 2019 - 2024. All rights reserved.