2013-04-24 28 views
1

我們的組織目前正在向Windows Azure中的Linux VM過渡,該服務爲我們的客戶提供各種網站服務。按照Azure文檔中的建議,我們在ClearDB上建立了一個mysql數據庫,我們希望這些數據庫能夠保存上述網站的數據。將我的Azure Linux VM連接到clearDB MySQL DB的步驟是什麼?

問題是,我無法讓我們的站點代碼與clearDB進行通信。


編輯

從MySQL命令行打開虛擬機連接不工作,並且我們可以使用該網站使用相同的憑據瀏覽數據庫,但是PHP仍然無法訪問數據。


我們正在運行PHP /笨作爲後臺的網站,所有的工作在我的本地站點的副本罰款,但總是失敗,當部署到Azure中的數據庫連接。

我已經在azure虛擬機上安裝了tcptraceroute,並且能夠在端口3306上成功ping通clearDB機器,所以它對VM肯定是可見的,但出於某種原因,它對於站點來說是不可見的。

下面是我的codeigniter的數據庫配置,它在我的本地機器上的apache下運行良好。

$active_group = "live"; 
$active_record = TRUE; 

$db['live']['hostname'] = "eu-cdbr-azure-north-a.cloudapp.net"; 
$db['live']['username'] = "<<USER>>"; 
$db['live']['password'] = "<<PASSWORD>>"; 


$db['live']['database'] = "<<DB NAME>>"; 
$db['live']['dbdriver'] = "mysql"; 
$db['live']['dbprefix'] = ""; 
$db['live']['pconnect'] = TRUE; 
$db['live']['db_debug'] = TRUE; 
$db['live']['cache_on'] = FALSE; 
$db['live']['cachedir'] = ""; 
$db['live']['char_set'] = "utf8"; 
$db['live']['dbcollat'] = "utf8_general_ci"; 
$db['live']['swap_pre'] = ''; 
$db['live']['autoinit'] = TRUE; 
$db['live']['stricton'] = FALSE; 

有誰知道,首先,如果它甚至有可能使用clearDB數據業務從Azure的VM(注意不是一個Azure的網站 - 這是我所知道的是可能的),其次,如何在地球上,你將它設置?

謝謝!

+0

似乎沒有要任何明顯會阻止其工作。嘗試設置'$ db ['live'] ['port'] = 3306;'我已經看到過那些混亂的數據庫連接。 – stormdrain 2013-04-24 18:05:07

+0

謝謝,但不幸的是它並沒有幫助。我也無法將phpymyadmin從Azure虛擬機連接到clearDB,儘管我的本地PC上有相同的設置: – bharling 2013-04-25 08:02:56

回答

1

解決 - 我們的Apache配置是不正確的,設置:

/usr/sbin/setsebool httpd_can_network_connect 1 

解決問題