2014-05-03 27 views
0

我最近創建了一個運行Ubuntu Linux的t1.micro實例。然後,我使用該實例創建一個圖像,這將允許我克隆更多的實例。在父實例上安裝LAMP和PHPMyAdmin這樣自然而然地,克隆的實例也接受了這些屬性。我的理解是,每個實例都有自己的LAMP服務器,它獨立於所有其他實例的LAMP服務器。那麼,爲什麼當在父實例上執行查詢時,它也會在克隆的實例上執行?父母和克隆的ec2實例使用相同的MySQL服務器?

回答

1

它們是完全獨立的,但有可能在實例#1的某個地方有一個連接字符串,指向實例#1上的MySQL數據庫。

當您複製實例時,實例#2上將存在相同的連接字符串,並且它仍指向實例#1。如果你真的希望每個實例都有自己獨立的數據庫,你需要確保連接字符串在每次被克隆時都被更新(否則它被設置爲'localhost'的等價物)。

+0

因此,如果'mysql_connect'函數的主機名不是'localhost'那麼它應該是什麼?公共DNS? – Lance

+0

我不使用mysql太多,但在SQL Server中,它可以是主機名或IP地址 - mysql可能是相同的。你也可以嘗試127.0.0.1 –