推薦幾款MySQL相關(guān)工具
前言:
隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展, MySQL 相關(guān)生態(tài)也越來(lái)越完善,越來(lái)越多的工具涌現(xiàn)出來(lái)。一些公司或個(gè)人紛紛開源出一些不錯(cuò)的工具,本篇文章主要介紹幾款 MySQL 相關(guān)實(shí)用工具。提醒下,這里并不介紹 Navicat 等這類圖形化操作工具哦。
1. SQL 審核 web 工具
SQL 審核與執(zhí)行,可能是各個(gè)公司或團(tuán)隊(duì)比較困擾的事情。若沒(méi)有平臺(tái)工具支持,只能通過(guò)人工的方式來(lái)處理,效率低且質(zhì)量沒(méi)辦法保證。為了規(guī)范操作,提高效率,大多數(shù)團(tuán)隊(duì)可能會(huì)自己開發(fā)或引入開源工具。這里介紹兩款開源免費(fèi)的 web 端 SQL 審核平臺(tái)。
Yearning
項(xiàng)目地址:github.com/cookieY/Yea…項(xiàng)目簡(jiǎn)介:guide.yearning.io/
Yearning 是一款可滿足大部分公司 SQL 審核需求的 web 端可視化 SQL 審核平臺(tái)。在實(shí)現(xiàn)常規(guī)的 sql 審核功能外還添加了諸如數(shù)據(jù)查詢等一系列便捷的功能。
主要功能:
自動(dòng)化SQL語(yǔ)句審核,可對(duì)SQL進(jìn)行自動(dòng)檢測(cè)并執(zhí)行。 DDL/DML語(yǔ)句執(zhí)行后自動(dòng)生成回滾語(yǔ)句。 審核/查詢 審計(jì)功能。 支持LDAP登錄/釘釘及郵件消息推送。 支持自定義審核工作流。 支持細(xì)粒度權(quán)限分配。優(yōu)點(diǎn):
顏值高,使用流暢。 部分審核規(guī)則可自定義。 部署簡(jiǎn)單,依賴項(xiàng)少。 功能豐富,既能審核執(zhí)行SQL又能查詢。 作者在持續(xù)維護(hù),有社區(qū)支持。Archery
項(xiàng)目地址:https://github.com/hhyo/Archery使用文檔:https://archerydms.com/
Archery 定位于 SQL 審核查詢平臺(tái),旨在提升 DBA 的工作效率,支持多數(shù)據(jù)庫(kù)的 SQL 上線和查詢,同時(shí)支持豐富的 MySQL 運(yùn)維功能,所有功能都兼容手機(jī)端操作。
主要功能:
集成 SQL 查詢、審核、執(zhí)行、備份。 權(quán)限區(qū)分明確,審核執(zhí)行分離。 SQL 工單自動(dòng)審批、高危語(yǔ)句駁回。 快速上線其他實(shí)例。 慢日志管理、SQL 優(yōu)化等運(yùn)維功能。 支持會(huì)話管理及參數(shù)配置。 可集成其他工具插件。優(yōu)點(diǎn):
除 MySQL 外,還支持多種主流數(shù)據(jù)庫(kù)。 功能更加豐富,真正做到一平臺(tái)多用。 具備 SQL 優(yōu)化、慢日志管理等運(yùn)維功能,對(duì) DBA 更加友好。 基于 Python 及 Django,利于二次開發(fā)改造。 對(duì)于 Yearning 和 Archery ,兩者各有優(yōu)缺點(diǎn)吧,都是優(yōu)秀的開源工具。Yearning 只適用于 MySQL ,部署簡(jiǎn)單,功能清晰明了,上手容易。Archery 支持多種數(shù)據(jù)庫(kù),部署稍微復(fù)雜些,功能更加豐富,支持諸多高級(jí)運(yùn)維功能。沒(méi)有哪個(gè)更好,只有哪個(gè)更合適。2. binlog 解析工具
前面文章也介紹過(guò) binlog 解析相關(guān)內(nèi)容及工具。利用 binlog 解析工具我們可以清楚看到數(shù)據(jù)庫(kù)執(zhí)行過(guò)的歷史內(nèi)容,并且可以得到反向內(nèi)容可用于回滾。binlog 解析工具在 GitHub 上可以搜索到許多,這里介紹下常用的以下兩款吧。
MyFlash
項(xiàng)目地址:https://github.com/Meituan-Dianping/MyFlash
MyFlash 是由美團(tuán)點(diǎn)評(píng)公司技術(shù)工程部開發(fā)維護(hù)的一個(gè)回滾 DML 操作的工具。該工具通過(guò)解析 v4 版本的 binlog ,完成回滾操作。相對(duì)已有的回滾工具,其增加了更多的過(guò)濾選項(xiàng),讓回滾更加容易。
主要功能:
解析 binlog ,回滾各類 DML 語(yǔ)句。 提供原生的基于庫(kù)、表、SQL類型、位置、時(shí)間等多種過(guò)濾方式。 支持 MySQL 多個(gè)版本,支持 GTID 格式。binlog2sql
項(xiàng)目地址:https://github.com/danfengcao/binlog2sqlbinlog2sql 同樣是開源的一款用于解析 binlog 的工具。安裝簡(jiǎn)單方便,基于 Python 開發(fā),源碼入門簡(jiǎn)單。
主要功能:
可以解析出原始 SQL 、回滾 SQL 、去除主鍵的 INSERT SQL 等。 數(shù)據(jù)快速回滾(閃回)。 主從切換后新 master 丟數(shù)據(jù)的修復(fù)。3. Percona Toolkit 工具包
官網(wǎng)地址:https://www.percona.com/doc/percona-toolkit/3.0/index.html#Percona Toolkit 工具包是一組高級(jí)的管理 MySQL 的工具包集,可以用來(lái)執(zhí)行各種通過(guò)手工執(zhí)行非常復(fù)雜和麻煩的系統(tǒng)任務(wù)。簡(jiǎn)稱 PT 工具,由 Percona 公司開發(fā)維護(hù),是廣大數(shù)據(jù)庫(kù)維護(hù)人員的好幫手。
PT 工具包由各種小工具組成,不同工具有著不同的作用。主要功能包括檢查主從復(fù)制的數(shù)據(jù)一致性、檢查重復(fù)索引、歸檔數(shù)據(jù)、在線DDL等。下面簡(jiǎn)單介紹下幾款常用工具的功能:
pt-archiver:主要用于清理、歸檔歷史數(shù)據(jù)。 pt-duplicate-key-checker:列出并刪除重復(fù)的索引和外鍵。 pt-kill:殺掉符合條件的數(shù)據(jù)庫(kù)連接。 pt-online-schema-change:在線修改表結(jié)構(gòu),常用于大表 DDL 。 pt-query-digest:分析 MySQL 日志,并產(chǎn)生報(bào)告,常用于慢日志分析。 pt-table-checksum:校驗(yàn)主從復(fù)制一致性。總結(jié):
本篇文章簡(jiǎn)單介紹了 SQL 審核、binlog 解析、Percona Toolkit 幾類工具,關(guān)于各個(gè)工具的使用方法,還需各位詳細(xì)探索。感興趣的同學(xué)可以安裝學(xué)習(xí)下,好的工具能讓工作事半功倍。
以上就是推薦幾款MySQL相關(guān)工具的詳細(xì)內(nèi)容,更多關(guān)于MySQL 相關(guān)工具的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. 實(shí)例講解如何使用Oracle數(shù)據(jù)庫(kù)to_date()2. 詳解MySQL中的pid與socket3. oracle觸發(fā)器介紹4. ORACLE中常用的幾種正則表達(dá)式小結(jié)5. SQL 嵌套查詢的具體使用6. Oracle數(shù)據(jù)庫(kù)SPFILE文件特點(diǎn)及具體操作7. 掌握SQL Server實(shí)戰(zhàn)教程之SQL Server的安裝指南8. MySQL 性能、監(jiān)控與災(zāi)難恢復(fù)9. ACCESS轉(zhuǎn)SQL數(shù)據(jù)庫(kù)相關(guān)的幾個(gè)技能10. 詳解MySQL批量入庫(kù)的幾種方式
