簡體   English   中英

(Azure) MySQL:MySQL 服務器已經消失

[英](Azure) MySQL: MySQL Server Has Gone Away

按照Azure 上指南, 配置防火牆設置,我仍然無法訪問我的 MySQL 數據庫。 即使 IP 地址已列入白名單,我也會從所有服務器獲得以下信息:

PHP 警告:PDO::__construct():MySQL 服務器在 C:\\Users\\admin\\app\\dbtest.php 中第 3 行消失了 PHP 警告:PDO::__construct():讀取問候包時出錯。 PID=11692 在 C:\\Users\\admin\\app\\dbtest.php 第 3 行

警告:PDO::__construct(): MySQL 服務器在 C:\\Users\\admin\\app\\dbtest.php 中第 3 行消失了

警告:PDO::__construct():讀取問候包時出錯。 PID=11692 in C:\\Users\\admin\\app\\dbtest.php on line 3 Error connected to SQL Server.PDOException Object ( [message:protected] => SQLSTATE[HY000] [2006] MySQL 服務器已經消失 [string:異常:私有] => [代碼:受保護] => 2006 [文件:受保護] => C:\\Users\\admin\\app\\dbtest.php [line:protected] => 3 [trace:Exception:private] => Array ( [0] => Array ( [file] => C:\\Users\\admin\\app\\dbtest.php [line] => 3 [function] => __construct [class] => PDO [type] => - > [args] => Array ( [0] => mysql:dbname=mydb;host=app.database.windows.net;port=1433 2 => admin 2 => pass ) ) ) [previous:Exception:private] => [errorInfo] => ) 1 進程完成,退出代碼為 0

這是我要連接的 PHP 腳本:

<?php
try {
    $conn = new PDO("mysql:dbname=db;host=app.database.windows.net;port=1433", "admin", "pass");

    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch (PDOException $e) {
    print("Error connecting to SQL Server.");
    die(print_r($e));
}

在沒有連接超時的情況下連接到 Azure MySQL 數據庫需要哪些常規連接設置?

格式為app.database.windows.net;port=1433的數據庫端點是提供 SQL Server 服務的 Azure SQL 的端點。 不是 MySQL。 請嘗試在https://www.microsoft.com/en-us/download/details.aspx?id=20098上安裝適用於 Windows 的 SQL Server 驅動程序。 然后嘗試使用new PDO( "sqlsrv:server=$serverName ; Database=AdventureWorks", "{user}", "{pass}"); 連接到 Azure SQL。

如果你想在 Azure 上使用 MySQL BaaS,你可以參考https://azure.microsoft.com/en-us/documentation/articles/store-php-create-mysql-database/詳細步驟。

任何進一步的問題,請隨時告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM