2014-01-30 68 views
0

我想在後端使用PHP和MySQL製作web應用程序。我想知道如何使用兩臺MySQL服務器來獲取數據。因爲我要爲應用程序使用兩個域。所以當我的第一個sql數據庫將達到極限時,我將需要使用另一臺服務器。那麼如何從所有服務器獲取數據?我將使用用戶註冊和登錄系統,然後使用其他文檔信息和全部。所以對我有什麼建議?您認爲我應該在單個服務器上使用用戶詳細信息以及其他服務器上的文檔的其他詳細信息嗎?如何從PHP中的兩個不同服務器使用MySQL數據庫?

我的問題可能會讓人困惑,所以讓我試着解釋一下。

看,我打算使用兩個域。域1和域2

人們將能夠從兩個域註冊以訪問這兩個應用程序。 (如谷歌的應用程序,例如gmail,youtube,adsense,adwords等)

Domain1將縮短網址,Domain2將允許管理文件。 Domain2也會生成縮短的鏈接來下載這些文件。所以人們可以從Domain1上傳文件,並且會生成縮短的網址,例如Domain1/f/123456。類似的東西,所以對應用程序的任何建議?

+1

json會是這裏的路。其相當多的服務器之間的通信行業標準 – KyleMassacre

+3

你的mysql服務器的限制是什麼?優化後,mysql每秒可以處理數千個請求。直到你通過它,你可能不應該擔心。 –

+1

您是否想過製作數據庫集羣? – crush

回答

2

您可以輕鬆使用兩個(或更多)應用程序中的一個數據庫。您只需要主機名即可從任何地方訪問數據庫。例如,如果你的數據庫主機whatever.secureserver.net只是把在連接參數,像這樣:

$connection = mysql_connect('whatever.secureserver.net', 'username', 'password'); 

你可以做,在二,三,四...等。訪問相同數據庫的不同應用程序但是,您必須確保數據庫允許遠程連接,前提是應用程序對於數據庫而言是遠程的。

如果你想使用兩個數據庫(DB1和DB2在這個例子中)在一個應用程序,你可以做以下 -

如果數據庫在同一臺服務器上:

$connection1 = mysql_connect('whatever.secureserver.net', 'username', 'password');  
$db1_selected = mysql_select_db('db1', $connection1); 
$db2_selected = mysql_select_db('db2', $connection1); 

如果數據庫是不同的服務器上:

$connection1 = mysql_connect('whatever.secureserver.net', 'username', 'password'); 
$connection2 = mysql_connect('somethingelse.secureserver.net', 'username', 'password');  
$db1_selected = mysql_select_db('db1', $connection1); 
$db2_selected = mysql_select_db('db2', $connection2); 

有處理過程的數據庫連接更優雅的方式,但我選擇了這個答案詳細所以它清楚地闡明瞭你。

相關問題