gpt4 book ai didi

mysql - 在 Heroku 上使用 Jaws Maria DB 的 Laravel 应用程序出现 MYSQL 错误

转载 作者:行者123 更新时间:2023-11-30 21:35:23 25 4
gpt4 key购买 nike

我在 Heroku 上有一个 Laravel 应用程序,使用 Maria DB 作为插件。我的应用程序已启动并正在运行。一切都适用于我的本地。当我尝试运行 heroku php artisan migrate 将我的表迁移到数据库时,出现此错误。

在 Connector.php 第 68 行:

SQLSTATE[HY000] [2002] php_network_getaddresses:getaddrinfo 失败:名称或服务未知

在 Connector.php 第 68 行:

PDO::__construct(): php_network_getaddresses: getaddrinfo 失败:名称或服务未知

我已将我的环境变量添加到 Heroku 仪表板。一旦我添加了 JAWS Marai DB,它就给了我 JAWS_MARIA_DB 连接字符串,但我已经尝试过这个,我已经删除了这个 var 并从我的 .env 添加了所有必要的 DB var,但没有任何效果。顺便说一句,我使用的是从 Heroku JAWS DB 设置页面给我的 DB 值,而不是我本地项目的值。

任何人都有任何想法。

谢谢!

最佳答案

这个问题有点老了,但我认为这会帮助其他人尝试诊断这个问题。

您需要将以下内容添加到您的数据库配置文件中。

if(getenv('SQL_URL')) {
$url = parse_url(getenv('SQL_URL'));

putenv('DB_HOST='.$url['host']);
putenv('DB_PORT='.$url['port']);
putenv('DB_USERNAME='.$url['user']);
putenv('DB_DATABASE='.substr($url["path"], 1));
putenv('DB_PASSWORD='.$url['pass']);
}

只要您将 jawsDB URL 添加到 Heroku 中的配置变量中,它就会解析该 URL 并生成正确的数据库配置信息。

关于mysql - 在 Heroku 上使用 Jaws Maria DB 的 Laravel 应用程序出现 MYSQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54154746/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com