PHP Azure DB 连接错误 (HY000/9002)

标签 php database azure xampp

我在使用 PHP 连接到 Azure 数据库时遇到问题,但我似乎不明白原因。 我正在 XAMPP 上运行 Apache 并尝试执行以下代码。

$servername = "((Database Server Name)).database.windows.net";
$username = "((Database UserName))@((Database Server Name))";
$password = "((Database Password))";
$dbname = "((Table Name))";

// Create connection
$conn = mysqli_init();
mysqli_real_connect($conn, $servername, $username, $password, $dbname, 3306);

if (mysqli_connect_errno($conn))
{
    die('Failed to connect to MySQL: '.mysqli_connect_error());
}

echo "Connected successfully";
mysqli_close($conn);
?>

我收到的完整错误消息:

Warning: mysqli_real_connect(): (HY000/9002): The server name you tried cannot be found. Please use the correct name and retry. Please check your server name ((Server Name)). in C:\xampp\htdocs\GetFromDBTest\getfromdb.php on line 16 Failed to connect to MySQL: The server name you tried cannot be found. Please use the correct name and retry. Please check your server name ((Server Name)).

第 16 行 是:

mysqli_real_connect($conn, $servername, $username, $password, $dbname, 3306);

最佳答案

这个问题已经解决了,这是我缺乏知识的情况。我不知道 Azure 提供不同类型的数据库。

解决办法: 我正在使用 msSQL 数据库,并尝试使用 mySQL 连接到它。通过使用 msSQL 连接到我的数据库解决了

这里是 msSQL 版本,供任何可能需要的人使用。

$serverName = "<DB Server Name Goes here>";
$connectionOptions = array("Database" => "<DB Name Goes here>", 
    "Uid" => "<User Id for the DB goes here>", 
    "PWD" => "<Password connected to the user Id goes here>");

$conn = sqlsrv_connect($serverName, $connectionOptions);
$tsql= "SELECT * FROM dbTable";
$getResults= sqlsrv_query($conn, $tsql);
if ($getResults == FALSE)
    echo (sqlsrv_errors());

while ($row = sqlsrv_fetch_array($getResults, SQLSRV_FETCH_ASSOC))
{
    //Here you deal with your data
}
//closes sql connection and clears everything connected to it
sqlsrv_free_stmt($getResults);

关于PHP Azure DB 连接错误 (HY000/9002),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51928543/

相关文章:

sql - 在VB.NET中将数据插入SQL数据库

azure - 使用 terraform 创建用户、组和 group_member

powershell - 检索 Azure Active Directory 中 Azure 应用程序的创建日期

php - 使用 base64_encode 而不是 mysql_real_escape_string 安全吗?

sql - 使用 `FROM` 部分中定义的别名,而不是列结果子查询 : is it possible?

sql - 我可以在提交后回滚 SQLite 事务吗?

azure - 在azure SQL Server (dw)下无法找到master数据库

php - 使用数组获取 num 行

php - 亚马逊 MWS 报告 API 回答 _DONE_NO_DATA_ 而不是 _CANCELLED_

javascript - 如何使用 Ajax/jQuery 设置 cookie?