2014-10-31 78 views
1

我正在嘗試使用c9.io開發環境連接到mysql數據庫。我跟隨他們的documentation,並看到多個鏈接,1,23c9.io php pdo連接到mysql

我驗證了mysql服務正在運行。我還驗證了PDO擴展是通過phpinfo()安裝的。這裏是我當前的代碼:

$ip = getenv("REMOTE_ADDR"); 
$port = '3306'; 
$user = "username"; 
$db = "c9"; 

    try{ 
    $con = new PDO("mysql:host=$ip;port=$port;dbname=$db;charset=utf8",$user,""); 
    } 
    catch(Exception $e){ 
     echo $e->getMessage(); 
    } 

我得到的錯誤Can't connect to MySQL server on '10.240.x.x' (111)

如果我本地主機嘗試作爲東道主,我得到的錯誤Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

我也跟着從上面的第二個鏈接評論:echo $IP在終端返回0.0.0.0

任何援助讚賞。

+0

請解釋downvote。 – andrsnn 2014-10-31 18:52:56

+0

你的密碼在哪裏? – 2014-10-31 19:46:19

+0

Cloud9 [文檔](https://docs.c9.io/setting_up_mysql.html)說:「因爲只能從工作區內訪問數據庫,所以沒有密碼」 – andrsnn 2014-10-31 19:46:55

回答

2

你在正確的軌道上。在https://docs.c9.io/setting_up_mysql.html它說主機使用$ IP。您可以改爲使用getenv(「IP」)或使用其值:0.0.0.0。這應該工作。 請嘗試類似:

$dbname = 'c9'; 
$ip = getenv('IP'); 
$user = getenv('C9_USER'); 

mysql_connect($ip, $user, '') or die('Could not connect to mysql');