2015-02-07 73 views
1

我一直在尋找一個正確的答案,沒有運氣的解決方案。我的本地主機上有WampServer和phpMyAdmin。我在遠程服務器上用phpmyadmin創建了一個擁有所有權限的用戶。連接本地phpMyAdmin與遠程服務器 - 錯誤#2002

    文件夾WAMP /應用/ phpmyadmin4.1.14 /我已經找到config.inc.php文件

並試圖將其與下面的代碼連接到遠程數據庫:

<?php 
$i++; 
/* Authentication type */ 
$cfg['Servers'][$i]['verbose'] = 'mysql wampserver'; 
//$cfg['Servers'][$i]['auth_type'] = 'cookie'; 
$cfg['Servers'][$i]['auth_type'] = 'config'; 
$cfg['Servers'][$i]['user'] = 'root'; 
$cfg['Servers'][$i]['password'] = ''; 
/* Server parameters */ 
$cfg['Servers'][$i]['host'] = '127.0.0.1'; 
$cfg['Servers'][$i]['connect_type'] = 'tcp'; 
$cfg['Servers'][$i]['compress'] = false; 
/* Select mysql if your server does not have mysqli */ 
$cfg['Servers'][$i]['extension'] = 'mysqli'; 
$cfg['Servers'][$i]['AllowNoPassword'] = true; 

$i++; 
/* Authentication type */ 
//$cfg['Servers'][$i]['auth_type'] = 'cookie'; 
$cfg['Servers'][$i]['auth_type'] = 'config'; 
$cfg['Servers'][$i]['user'] = 'username'; 
$cfg['Servers'][$i]['password'] = 'mypass'; 
/* Server parameters */ 
$cfg['Servers'][$i]['host'] = 'example.com'; 
$cfg['Servers'][$i]['connect_type'] = 'tcp'; 
$cfg['Servers'][$i]['compress'] = false; 
/* Select mysql if your server does not have mysqli */ 
$cfg['Servers'][$i]['extension'] = 'mysqli'; 
$cfg['Servers'][$i]['AllowNoPassword'] = false; 
?> 

因此,現在我在phpMyAdmin中有第二臺服務器,但是當我選擇它時 - 彈出錯誤。 MySQL錯誤#2002看起來像這樣:

2002 - 連接嘗試失敗,因爲連接方在一段時間後沒有正確響應,或者建立的連接失敗,因爲連接的主機未能響應。服務器沒有響應(或本地服務器的套接字配置不正確)。

請幫我想念什麼!

回答

0

你有2個連接列在那裏,所以它會顯示2個連接。

因此,對於你當前的配置中列出的第二個服務器嘗試連接到「example.com」服務器,如果你試圖連接到該服務器確保您已允許遠程連接的建立,以及帳戶權限也遠程訪問。

如果您不試圖連接到「example.com」,請將這些行更改爲您要連接到的遠程主機。

$cfg['Servers'][$i]['user'] = 'username'; 
$cfg['Servers'][$i]['password'] = 'mypass'; 
/* Server parameters */ 
$cfg['Servers'][$i]['host'] = 'example.com'; 

您可能需要在添加端口以及

$cfg['Servers'][$i]['port'] = '3307'; // MySQL port 
+0

是 - 我想兩個連接,一個爲本地主機和一個對我的遠程服務器。我已經在phpMyAdmin中爲遠程服務器(example.com)創建了一個擁有所有權限的用戶,並且正在使用此用戶名和密碼。 那麼,你認爲這是用戶名/密碼和privilages的問題? 只是要補充,它是共享主機,我想連接 - 所以,成千上萬的人成功做到了這一點:) – mpavlovic89 2015-02-07 10:17:43

+0

是的,這將是特權,因爲phpmyadmin通過mysql連接,它需要正確的權限設置爲遠程訪問。只要該帳戶可以遠程連接,那麼這些帳戶詳細信息將與phpmyadmin一起使用。 – lukesUbuntu 2015-02-07 10:20:47

+0

沒有運氣 - 我已經在服務器上創建了一個擁有所有privilages的用戶。 – mpavlovic89 2015-02-07 10:22:26

2

您從您的計算機和服務器之間的通信失敗的痛苦。如果它是許可的,你不會得到一個死的請求,你會得到許可錯誤。

  • 確保您的域名可用(連接到地址並以某種方式得到答案);
  • 確保您的防火牆已打開正確的端口。這可能會非常棘手,因爲您可以使用一個端口來輸入服務器和另一個服務端口。確保您的防火牆規則的寫入方式正確,以便您的機器可以使用外部端口來查找正確的內部服務。
  • 使用不正確的用戶名和密碼。當你解決這個#2002錯誤時,你會得到#1045訪問被拒絕的錯誤。然後你就會知道你需要擔心權限和授予IP訪問權限。
  • 確保您的本地Wamp有可用於PhpMyAdmin建立連接的套接字。
  • 確保你的遠程MySQL允許遠程連接
相關問題