搜尋

首頁  >  問答  >  主體

透過遠端託管伺服器上的PHP腳本存取我PC上的MysqlServer的方法

我在我的電腦上安裝了MysqlServer和Mysql Workbench。伺服器運作良好(綠色)。 現在我有一個共享託管伺服器,我想透過一個PHP腳本從我的電腦上的資料庫中獲取資料。目前還沒有資料庫或任何數據,因為我只是想先建立兩個伺服器之間的連接。我嘗試了很多次連接,但到目前為止都沒有成功。

→ 使用Workbench的選項文件,我在bind-address中放入了由託管伺服器提供的IP位址。 (即希望從我的電腦上的MysqlServer存取的遠端伺服器)。

→ 我還啟用了SSL連接,因為我的主機網站是基於SSL的。

→ 然後,在使用者和權限中,我將%放在root使用者上,以便root可以從另一個主機(不僅僅是localhost)連接到我的電腦上的MysqlServer。

→ 我已經允許了Windows防火牆上連接埠3306的入站規則。

→ 我正在使用的基本程式碼是一個基本的PDO PHP資料庫連接,其中$host是我的電腦的公共IP,$port是3306,$root是root,密碼是我在安裝MysqlServer時創建的密碼。

我正在使用的基本程式碼是:

try
{
    $dbh = new PDO("mysql:host=".$host.";port=".$port, $root, $root_password);
}
catch (Exception $e)
{
    die('Erreur : ' . $e->getMessage());
}
?>

→ 我遇到的錯誤是:SQLSTATE[HY000] [2002] 無法連接到MySQL伺服器「我的電腦的公共IP位址」。

有人遇到過這種問題嗎?你能看到任何奇怪的東西可以幫助我嗎? 歡迎任何答案、建議、評論或問題。

P粉317679342P粉317679342447 天前516

全部回覆(1)我來回復

  • P粉511749537

    P粉5117495372023-09-07 16:22:10

    有兩種連接資料庫的方式-

    $connect = new PDO('mysql:host=localhost;port=3306;dbname=dbname','root','');
    $connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $connect = new mysqli("localhost","root","","dbname");

    回覆
    0
  • 取消回覆