五大好用的開源MySQL管理工具推薦

衆所周知,對於數據庫管理工做者(DBA)來講,保持數據正常運行在最佳狀態須要具有敏捷、專一、冷靜和快速的反應能力。由於數據庫幾乎是全部應用程序成功運行的核心,因爲DBA負責組織數據,所以尋找可靠的工具幫助簡化數據庫管理流程並簡化平常維護任務是必要的。下面是小編整理的五個好用的開源MySQL管理工具,能夠改善MySQL環境中的CLI和Web管理,SQL查詢,模式遷移以及複製和恢復,你們能夠參考使用。php

一、Mycli數據庫

Mycli項目提供MySQL命令行自動完成和語法高亮顯示,它是最流行的MySQL管理工具之一。安全

諸如跳轉主機和雙因素認證之類的安全限制使許多MySQL DBA只能經過命令行訪問系統。在這種狀況下,心愛的GUI工具(如MySQL Workbench,Monyog等)不是合適的選擇。服務器

使用命令行的過程當中,大部分時間都花在了黑色的終端世界。Mycli最好的一點就是語法突出的豐富性。例如,它容許DBA在WHERE子句中將查詢字符串中的函數和運算符在視覺上分離出來。對於簡短的單行查詢來講,這可能不是什麼大不了的事情,可是當使用多表執行JOIN操做查詢時,這就變成了巨大優點。網絡

Mycli支持多行查詢和語法突出顯示,這意味着能夠在查看或優化查詢時最重要的部分,能夠選擇多種語法高亮配色方案或建立本身的配色方案。函數

Mycli的另外一個明星功能是智能完成,容許經過輸入前幾個字符來從上下文相關列表中選擇表名和列名。不須要由於忘記WHERE子句中列的名稱而放棄當前輸入運行SHOW CREATE TABLE。工具

在Mycli中的智能完成:性能

使用Mmycli,用戶可使用 s等來查詢,例如 fs myAlias myQuery。 這很是方便,只要須要,就可使用 f myAlias執行查詢。測試

Mycli項目使用BSD 3許可證,項目目前有44個貢獻者,1.2k提交和5k Star。優化

二、Gh-ost

99%的MySQL數據庫管理員(DBA)在執行對MySQL表的更改時擔憂會影響生產,能夠考慮Gh-ost(GitHub Online Schema Migration)。Gh-ost提供MySQL模式更改,不會阻塞寫入,不使用觸發器,而且能夠暫停和恢復遷移!

爲何這個如此重要?因爲MySQL 5.6提供了新的ALTER TABLE ... ALGORITHM = INPLACE DDL(數據定義語言)功能,所以有可能修改一個表而不阻塞寫操做,例如添加索引(B-tree)等經常使用操做。可是,在寫入(DML語句)被阻塞的狀況下,最顯着的是增長了FULLTEXT索引,表空間的加密以及列類型轉換。

其餘流行的在線模式更改工具(如Percona的pt-online-schema-change)經過在主服務器上實現一組三個觸發器(INSERT,UPDATE和DELETE)來保持shadow副本表與變化同步。這會因爲寫入放大而致使較小的性能損失,但更重要的是須要七個元數據鎖定實例。這些有效地阻止了DML(數據操縱語言)事件。

因爲Gh-ost使用二進制日誌進行操做,所以不會受到基於觸發器的缺點影響。最後,若是服務器出問題,能夠暫停模式遷移一段時間,並在恢復後繼續。

Gh-ost操做模式:

Gh-ost提供了一種替代模式,能夠直接在主服務器(不論是否有從服務器)上執行遷移,讀取主服務器的binlog_format = ROW事件,而後將其從新應用到shadow表中。

最後一個選項可用於僅在副本上運行遷移,而不會影響主服務器,所以能夠測試或以其餘方式驗證遷移。

Gh-ost通常流程:

請注意,若是模式具備外鍵,那麼Gh-ost可能沒法運行,由於此配置不受支持。oak-online-alter-table是Gh-ost的前身,DBA能夠閱讀Percona首席執行官Peter Zaitsev以及OAK工具包和Gh-ost的做者和維護人員Shlomi Noach的迴應,比較Gh-ost和pt-online-schema-change的性能。

Gh-ost項目使用MIT許可證,該項目目前有29個貢獻者,近1k的提交和3k Star。

三、PhpMyAdmin

MySQL工具中運行時間最長,最成熟的項目之一是用於經過Web管理MySQL的古老PhpMyAdmin工具。phpMyAdmin容許DBA瀏覽和修改MySQL數據庫對象:數據庫,表,視圖,字段和索引。有多種選項可以使用十幾種格式執行數據導出,修改MySQL用戶和權限,以及執行臨時查詢。

PhpMyAdmin狀態頁面顯示問題(鏈接/流程和流量圖):

能夠找到一個「狀態」選項卡,動態繪製給定數據庫實例問題,鏈接/進程和網絡流量以及「Advisor 」選項卡,顯示可能的性能問題列表以及如何修復的建議。

PhpMyAdmin開始屏幕:

PhpMyAdmin使用GPLv2許可證,這是一個超過800個貢獻者的項目,112k提交和2.7k Star。

四、Sqlcheck

SQL反模式可能會下降查詢速度,但一般須要經驗豐富的DBA和開發人員仔細研究代碼來識別和解決這些問題。Sqlcheck反映了Karwin肯定的四類反模式:

·Logical database design

·Physical database design

·Query

·Application development

工做中的Sqlcheck:

Sqlcheck能夠針對不一樣的風險分爲低風險,中風險或高風險三大級別。若是反模式列表很大,這會頗有幫助,由於能夠優先考慮對性能影響最大的查詢。要作的是收集一個不一樣的查詢列表到文件,而後將它們做爲參數傳遞給該工具。

五、Orchestrator

Orchestrator是高可用性管理工具,它提供了發現MySQL環境的複製拓撲能力,經過上下連接來識別主從。它也能夠經過GUI重構複製拓撲結構,提供一個拖放界面將從設備提高爲主設備,這是一個很是安全的操做。事實上,Orchestrator拒絕任何非法操做,以避免破壞系統。

最後,Orchestrator在節點遭遇失敗時能夠支持恢復,由於它使用狀態的概念智能選擇正確的恢復方法,並決定使用適當的主升級過程。

Orchestrator是GitHub的Shlomi Noach提供的另外一個工具。它由Apache許可證2.0涵蓋,該項目有34位貢獻者,2,780個提交和900顆Star。

Orchestrator爲MySQL複製和恢復提供了一個窗口,除此以外,還有一個很棒的免費工具——PMM。它整合了許多最佳開源工具,包括Orchestrator的優勢,以提供全面的數據庫監控和管理功能。它支持MySQL,MariaDB和MongoDB服務器。

上述每一個工具涉及到MySQL管理員角色的不一樣方面。這些工具是免費開源的,若是須要,也能夠根據本身的環境需求進行調整,也能夠不加修改地直接使用。

 

http://www.enkj.com/idcnews/Article/20180115/12710

相關文章
相關標籤/搜索