php - 有没有办法更改我的主机名来修复 "php_network_getaddresses: getaddrinfo failed: No such host is known."?

标签 php mysql sql composer-php mariadb

我正在尝试连接到 MariaDB SQL 数据库,但不确定如何表达我的主机名(它看起来根本不像 URL)。我的数据库托管服务告诉我,我的主机名是 spike-codes-db-19d5bab155-mariadb,但是当我尝试将其与其他变体一起使用时(见下文),我收到一条错误消息,告诉我 不知道这样的主机。

我的 PHP 脚本由 Heroku 托管,但下面的错误日志记录来 self 的本地主机测试服务器。 SQL 数据库是 MariaDB,由 unubo.com 托管,我知道它一切都很好。

我尝试过的主机名:

  • spike-codes-db-19d5bab155-mariadb

  • spike-codes-db-19d5bab155-mariadb:3306

  • spike-codes-db-19d5bab155-mariadb-master-0

  • mariadb://[用户]:[密码]@spike-codes-db-19d5bab155-mariadb:3306

括号用于编辑数据。

请不要将其标记为重复,我已经检查了所有其他问题,这些问题返回相同的错误代码,但没有一个解决我的问题(大多数解释如何修复语法,但我不确定我的问题)主机名,其他问题都没有涵盖,全部使用“localhost”作为服务器名称)。

<?php

$hostname = "spike-codes-db-19d5bab155-mariadb";
$username = get_env("db_user");
$password = get_env("db_pass");
$db = get_env("db_name");

$conn=mysqli_connect($hostname,$username,$password,$db);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$sql = "SELECT * FROM reviews";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    // output data of each row
    while($row = mysqli_fetch_assoc($result)) {
        echo $row;
    }
} else {
    echo "0 results";
}

mysqli_close($conn);

?>

预期:返回数据库信息。

错误消息:


Warning: mysqli_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: No such host is known. in [file_location] on line 8
Connection failed: php_network_getaddresses: getaddrinfo failed: No such host is known.```

最佳答案

<?php
opcache_reset();
?>

我也有同样的问题。我尝试了很多解决方案,但没有一个有效。这对我来说是一份工作。 您需要在 CLI 上重置 Opcache。使用上面的代码创建一个文件,例如..clear.php 并运行它。然后再次尝试运行您的原始代码。它会解决这个问题。

关于php - 有没有办法更改我的主机名来修复 "php_network_getaddresses: getaddrinfo failed: No such host is known."?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57830416/

相关文章:

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数 1 是资源

java - JSON 网址不起作用

在 MySQL 连接的数据库中插入一行时的 PHP 错误代码

sql - 如何使用 Eloquent 在 Laravel 中编写以下 SQL 查询?

Java将CSV文件读入数组但忽略第一行

sql - 如何在 SQL 中使用额外的值从一张表插入另一张表?

javascript - AngularJS 从 Laravel 数据库中删除数组项

php - 使用 PHP 按钮删除单独的行/行

mysql - 具有逗号分隔值的 Solr Facet 多个单词

php - 记录被检索两次