php - Laravel连接远程mysql数据库

标签 php mysql laravel shared-hosting

我正在尝试在我的 Laravel(版本 5.6)应用程序中连接到我的远程 mysql 数据库(infinityfree.net)。这是我在 database.php 文件中的配置:

'mysql' => [
        'driver' => 'mysql',
        'host' => 'sql201.epizy.com',
        'database' => 'epiz_22148680_LaravelHospital',
        'username' => 'epiz_22148680',
        'password' => 'Vxp7****R1k6',
        'charset' => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix' => '',
    ],

我还更改了 .env 文件:

DB_CONNECTION=mysql
DB_HOST=sql201.epizy.com
DB_PORT=3306
DB_DATABASE=epiz_22148680_LaravelHospital
DB_USERNAME=epiz_22148680
DB_PASSWORD=Vxp7****R1k6

但是,当我尝试连接到我的数据库时,出现此错误:

PDOException::("SQLSTATE[HY000] [2002] A connection attempt failed because the connected party did not properly respond after a p period of time or established connection failed because connected host has failed to respond.

我看过 this postthis但他们没有得到答复。

最佳答案

出于安全原因,默认情况下禁用对 MySQL 数据库服务器的远程访问。 MySQL 实例仅配置为监听本地连接。这是 MySQL 的默认设置,但它不适用于远程数据库设置,因为 MySQL 必须能够监听可以访问服务器的外部 IP 地址。

要启用它,请打开您的 mysqld.cnf 文件:

寻找以下行,

bind-address            = 127.0.0.1

为了排除故障,将其更改为 0.0.0.0。

重启MySQL并再次检查连接。

如果它的工作将 0.0.0.0 更改为您的 WEBSERVERIP 地址

如果您有任何问题,这里是完整的教程。

https://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html

关于php - Laravel连接远程mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50555947/

相关文章:

mysql - '/' 应用程序中的 umbraco 站点服务器错误

mysql - 获取兴趣与事件兴趣匹配的用户

javascript - 如何将 Vuejs 中的仪表板模板集成到 Laravel 5.7 项目中

php - Facebook PHP SDK 通知未显示在 Facebook ios 通知中?

PHP 从 html 表单获取并将变量回显为 mysql order by

php - 如何从 MySql 中的两个表构建 JSON 文件

php - 无法访问 ServiceProvider 中的 config() |拉维

php - 将数组发送到 codeigniter 中的函数

php - 如何在像 Quickbase 这样的更新时在 SQL 服务器(Mysql 或 PostgreSQL、EST)中运行公式?

php - (#100) 必须指定至少一个引用对象 - OG 操作的简单 POST