云中的MySQL 亞馬遜RDS初體驗
原創(chuàng)【51CTO 12月10日外電頭條】Amazon的RDS服務(Relational Database Service,關系數(shù)據(jù)庫服務)給我們帶來了云中的MySQL數(shù)據(jù)庫服務器,讓“數(shù)據(jù)庫作為服務”的概念成為現(xiàn)實,為現(xiàn)有的MySQL應用步入云中提供了一臺快速的自動升降梯。
我們知道,Amazon的EC2實例中可以運行MySQL,同時它還提供SimpleDB服務(51CTO編輯注:EC2是Amazon的招牌云計算服務,而SimpleDB則是其之前一直提供的云端數(shù)據(jù)庫服務,可以對結(jié)構化數(shù)據(jù)實時查詢),那么為什么還要選擇SimpleDB呢?
關于SimpleDB,它的名字給出了***的理由。SimpleDB的本意就是成為一個簡單的數(shù)據(jù)庫。如果你只需要基本的讀寫和查詢功能,那么SimpleDB是個非常好的選擇,但它并不是一個關系數(shù)據(jù)庫。
那么在EC2實例中運行MySQL呢?這不是與RDS提供了相同的功能嗎?沒錯,但RDS是直接使用MySQL的關鍵部件。與EC2實例不同,RDS并不需要配置操作系統(tǒng),也不需要管理。簡單地說,RDS幾乎就是一個純粹的MySQL數(shù)據(jù)庫,不多也不少。
快速建立DB Instance
從用戶和開發(fā)者的角度來看,Amazon RDS和一個遠程MySQL數(shù)據(jù)庫沒什么兩樣。Amazon將RDS的云中MySQL服務器稱做DB Instance,通過基于Web的API進行創(chuàng)建和管理,其余的操作可以通過標準的MySQL通信協(xié)議完成。
創(chuàng)建DB Instance時需要指定一些屬性來確定數(shù)據(jù)庫實例的行為和能力。例如Class屬性決定了所創(chuàng)建的DB Instance可用的內(nèi)存和處理能力。Amazon以ECU(Elastic Compute Unit)作為其計算能力單位(1個ECU差不多相當于1個1.0GHz 2007 Xeon處理器),你可以創(chuàng)建1.7GB內(nèi)存和1 ECU的小型(Small)DB Instance,直到擁有68GB內(nèi)存和26 ECU的超級大型(Quadruple Extra Large)DB Instance。
創(chuàng)建DB Instance時還需要定義可用的存儲,存儲范圍為5GB到1024GB,你可以將更大的數(shù)據(jù)分配給多個DB Instance,Amazon RDS數(shù)據(jù)庫的***工作上限是每個表1TB。
使用RDS工作
使用Amazon RDS時需要兩樣東西:命令行工具和兼容MySQL的客戶端應用。前者是Amazon提供的Java應用套裝,負責處理DB Instance的管理比如創(chuàng)建、參數(shù)調(diào)整、刪除等等,可以從Amazon網(wǎng)站下載。后者可以是任何與MySQL服務器進行通信的應用。當然,你還需要注冊Amazon Web Services來獲得AWS Access ID和AWS Secret Access Key。
圖:Amazon RDS DB Instance創(chuàng)建之后,就可以像任何一種遠程MySQL數(shù)據(jù)庫那樣進行管理,比如使用MySQL Administrator工具。
下載了命令行工具之后就可以開始設置環(huán)境變量。我們可以通過下面的命令行創(chuàng)建一個小型的DB Instance(1 ECU和20GB):
rds-create-db-instance --db-instance-identifier rginstance --allocated-storage 20 ---db-instance-class db.m1.small --enging MySQL5.1 --master-username rgrehan --master-user-password mypassword --db-name ADBTest --headers
這將產(chǎn)生一個名為rginstance的DB Instance,管理員的名字是rgrehan,密碼為123456。在這個DB Instance中將創(chuàng)建名為ADBTest的數(shù)據(jù)庫,***存儲為20GB。
如果你不喜歡命令行工具,Amazon已經(jīng)發(fā)布了支持各種編程語言的庫,可用于Java、C#、PHP、VB.NET和Perl等。RDS的管理功能均表現(xiàn)為Web服務,因此這些庫基本上都是通過遠程調(diào)用的Web服務包。
按照使用付費
Amazon Web Services的一項基本原則是按照使用情況收費,同樣RDS也完全是根據(jù)MySQL應用的具體使用情況來計算費用。
DB Instance分為幾種類別,每一種都有自己的價格。一個小型DB Instance是每小時11美分,超級大型DB Instance是每小時3美元10美分,其余的在兩者之間。費用是按照DB Instance的壽命來計算的,即使它不響應任何MySQL命令。因此你要記住只有終止數(shù)據(jù)庫實例才能停止計費,但你不會丟失數(shù)據(jù)。你可以要求在終止數(shù)據(jù)庫時創(chuàng)建快照,在以后需要的時候再恢復,當然Amazon會為保存快照收取費用,但這很便宜,每GB每月只要15美分。
【編輯推薦】
- 亞馬遜開始提供MySQL云數(shù)據(jù)庫服務
- Amazon發(fā)布SimpleDB:初露端倪的數(shù)據(jù)庫
- PostgreSQL創(chuàng)始人:MySQL衰退屬必然
- MySQL創(chuàng)始人支招Oracle 建議轉(zhuǎn)售MySQL
- MySQL蠶食Oracle市場 六成IT設施使用開源軟件
【51CTO.com譯稿,非經(jīng)授權請勿轉(zhuǎn)載。合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com,且不得修改原文內(nèi)容。】
原文:First look: Amazon RDS gives you a MySQL server in the cloud 作者:Rick Grehan