MySQL 5.5前日發布了里程碑2開發者版本。在此之前,MySQL的最後一個穩定版是MySQL 5.1,發售日期是一年前。對於MySQL 5.5,團隊採取了新的版本升級模式,讓計畫在MySQL 6.0中亮相的一些新功能被加入。新的模式帶來了怎樣的MySQL?讓我們來看看。 儘管甲骨文收購Sun交易尚在等待最終結果,業界對開源資料庫MySQL的未來命運也十分擔憂,但Sun的開發者仍在繼續努力研發該開源資料庫。他們的勞動果實之一就是最近發布的MySQL 5.5里程碑2開發者版本。新版引進了許多新功能,其中有些功能最初是為MySQL 6.0而準備的。
最近兩年以來,MySQL界一直在討論MySQL 6.0版。最近發布的一個MySQL穩定版是5.1版,在飽受爭議和一再延遲後,該版本於一年前初次亮相。
繼推出MySQL 5.1版後,MySQL開發團隊改變了推出新版的模式,以支援一個更快速、更穩定的版本升級週期。此後,某些計劃在6.0版中推出的功能提前亮相。
Sun發言人史蒂夫柯瑞(Steve Curry)指出,「作為這種新模式的一部分,我們已經將許多原先為6.0版計劃的功能提前在MySQL 5.5版中實現,將來肯定會有MySQL 6.0版,但是我們尚未決定它將包含哪些新升級功能。
柯瑞表示,他相信用戶會因為MySQL 5.5里程碑版中的眾多新功能而感到興奮,其中包括效能和擴充性方面的改進。
◆MySQL 5.5新增了半同步複製功能,現在MySQL使用者除了使用預設的非同步複製功能之外,又多了一種複製功能可供選擇。
根據MySQL 5.5版本聲明顯示,「在傳回執行複製交易的會話之前,Master端將暫停執行提交,直到slave端確認它已經收到並記錄複製交易。」相較之下,在非同步複製功能中,Master端將直接記錄事件,而無需知道slave是否真正處理了複製事務。
◆MySQL 5.5增加了改良的partitioning語法。在這個新版資料庫中,有許多新的資料庫分區功能選項,其中包含使用者自訂的RANGE COLUMNS分區功能選項。
MySQL官方表示,“當用戶在根據RANGE COLUMNS或LIST COLUMNS對錶進行分區時,可以根據多列數值相應的定義ranges或lists,最高可關聯16列。”
◆在MySQL 5.5里程碑版中,也新增了對SQL標準SINGAL和RESINGNAL語句的支援。 SINGNAL語句和RESINGNAL語句都能確保一個錯誤狀態能夠被傳回資料庫Hander。
MySQL官方表示,「沒有SINGNAL,如果想讓程式回傳錯誤,必須藉助於諸如故意指向一個不錯在的表等迂迴解決方案。而RESINGNAL既可以處理錯誤又能返回錯誤訊息。否則,透過在Handler內執行一個SQL語句,啟動Handler的訊息將會被破壞。
從MySQL 5.1到MySQL 5.5
就目前而言,MySQL 5.5里程碑版還是一個開發者版,還不適合用在正式的生產環境。但這並不說明Sun不希望人們試用這個新版本,柯瑞表示,MySQL 5.5測試者的工作非常重要,可以幫助Sun收到回饋意見和估算進度。
如果想從目前的5.1版升級到還處於開發版的5.5,用戶無需自行摸索升級方法。柯瑞表示,“我們正在提供大量的移植資料,幫助用戶完成升級過程,並鼓勵他們開始熟悉新版本的功能,我們不希望用戶在這一過程中遇到任何麻煩。”
至於MySQL 5.5何時結束目前的開發者里程碑版而正式發布,柯瑞表示尚未最終確定。
他表示,「將來從社群、客戶和內部QA獲得了初步回饋意見後,我們將有更明確的想法。透過這種新里程碑版本模式,我們正努力完善資料庫所有功能。初步用戶回饋意見令人滿意,但現在說何時正式發布還為時過早。