五大開源MySQL管理工具

2021-08-13 14:56:50 字數 3542 閱讀 6040

對於資料庫管理員(dba)來說,保持資料庫執行在最佳狀態需要具備敏捷,專注,快速反應的能力以及一顆冷靜的頭腦。資料庫幾乎是所有應用程式成功執行的核心,由於dba負責組織資料,因此尋找可靠的工具幫助簡化資料庫管理流程並簡化日常維護任務是必要的。

以下這些優秀工具可以改善mysql環境中的cli和web管理,sql查詢,模式遷移以及複製和恢復。(順附github位址,star數量和提交數量供廣大dba參考)

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執行查詢。

2、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索引,表空間的加密以及列型別轉換。

由於gh-ost使用二進位制日誌進行操作,因此不會受到基於觸發器的缺點影響。最後,如果伺服器出問題,可以暫停模式遷移一段時間,並在恢復後繼續。

那麼gh-ost如何工作呢?預設情況下,gh-ost連線到副本(從),標識主節點,並在主節點上進行應用遷移。它將副本上的更改接收到binlog_format = row的源表中,解析日誌並將這些語句轉換為在主shadow表上重新執行。它跟蹤副本上的行數,並確定何時執行原子切換(切換表)。

▲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的效能。

3、phpmyadmin

mysql工具中執行時間最長,最成熟的專案之一是用於通過web管理mysql的古老phpmyadmin工具。phpmyadmin允許dba瀏覽和修改mysql資料庫物件:資料庫,表,檢視,欄位和索引。有多種選項可使用十幾種格式執行資料匯出,修改mysql使用者和許可權,以及執行臨時查詢。

▲phpmyadmin狀態頁面顯示問題,連線/流程和流量圖

可以找到乙個「狀態」選項卡,動態繪製給定資料庫例項問題,連線/程序和網路流量以及「advisor 」選項卡,顯示可能的效能問題列表以及如何修復的建議。

▲phpmyadmin開始螢幕

4、sqlcheck

sql反模式可能會降低查詢速度,但通常需要經驗豐富的dba和開發人員仔細研究**來識別和解決這些問題。sqlcheck反映了karwin確定的四類反模式:

▲工作中的sqlcheck

sqlcheck可以針對不同的風險分為低風險,中風險或高風險三大級別。如果反模式列表很大,這會很有幫助,因為可以優先考慮對效能影響最大的查詢。要做的是收集乙個不同的查詢列表到檔案,然後將它們作為引數傳遞給該工具。

使用從pmm演示環境收集的樣本來生成以下輸出:

orchestrator是高可用性管理工具,它提供了發現mysql環境的複製拓撲能力,通過上下鏈結來識別主從。它也可以通過gui重構複製拓撲結構,提供乙個拖放介面將從裝置提公升為主裝置,這是乙個非常安全的操作。事實上,orchestrator拒絕任何非法操作,以免破壞系統。

最後,orchestrator在節點遭遇失敗時可以支援恢復,因為它使用狀態的概念智慧型選擇正確的恢復方法,並決定使用適當的主公升級過程。

▲orchestrator為mysql複製和恢復提供了乙個視窗

除此之外,還有乙個很棒的免費工具——pmm。它整合了許多最佳開源工具,包括orchestrator的優點,以提供全面的資料庫監控和管理功能。它支援mysql,mariadb和mongodb伺服器。

上述每個工具涉及到mysql管理員角色的不同方面。這些工具是免費開源的,如果需要,也可以根據自己的環境需求進行調整,也可以不加修改地直接使用。如果你還沒有嘗試過,不妨試試!

五大開源MySQL管理工具

對於資料庫管理員 dba 來說,保持資料庫執行在最佳狀態需要具備敏捷,專注,快速反應的能力以及一顆冷靜的頭腦。資料庫幾乎是所有應用程式成功執行的核心,由於dba負責組織資料,因此尋找可靠的工具幫助簡化資料庫管理流程並簡化日常維護任務是必要的。以下這些優秀工具可以改善mysql環境中的cli和web管...

五大開源MySQL管理工具

對於資料庫管理員 dba 來說,保持資料庫執行在最佳狀態需要具備敏捷,專注,快速反應的能力以及一顆冷靜的頭腦。資料庫幾乎是所有應用程式成功執行的核心,由於dba負責組織資料,因此尋找可靠的工具幫助簡化資料庫管理流程並簡化日常維護任務是必要的。以下這些優秀工具可以改善mysql環境中的cli和web管...

2023年五大最佳管理工具 收藏)

2004年五大最佳管理工具 2005.01.07 來自 chinabyte 最佳管理工具1 平衡計分卡關注率 經典案例 美孚石油u r公司在成功實施平衡計分卡後,連送油的 開卡車的司機都會從他的角度去思考戰略的實施。送油去加油站時會觀察這個加油站是否達到服務要求,了解客戶的滿意度,客戶出現的需求等等...