前言:
隨著互聯網技術的不斷發展,MySQL 相關生態也越來越完善,越來越多的工具涌現出來 。一些公司或個人紛紛開源出一些不錯的工具,本篇文章主要介紹幾款 MySQL 相關實用工具 。提醒下,這里并不介紹 Navicat 等這類圖形化操作工具哦 。
1. SQL 審核 web 工具
SQL 審核與執行,可能是各個公司或團隊比較困擾的事情 。若沒有平臺工具支持,只能通過人工的方式來處理,效率低且質量沒辦法保證 。為了規范操作,提高效率,大多數團隊可能會自己開發或引入開源工具 。這里介紹兩款開源免費的 web 端 SQL 審核平臺 。
Yearning
項目地址:https://github.com/cookieY/Yearning項目簡介:https://guide.yearning.io/Yearning 是一款可滿足大部分公司 SQL 審核需求的 web 端可視化 SQL 審核平臺 。在實現常規的 sql 審核功能外還添加了諸如數據查詢等一系列便捷的功能 。
關于Yearning
Yearning首頁
主要功能:
自動化SQL語句審核,可對SQL進行自動檢測并執行 。DDL/DML語句執行后自動生成回滾語句 。審核/查詢 審計功能 。支持LDAP登錄/釘釘及郵件消息推送 。支持自定義審核工作流 。支持細粒度權限分配 。
優點:
顏值高,使用流暢 。部分審核規則可自定義 。部署簡單,依賴項少 。功能豐富,既能審核執行SQL又能查詢 。作者在持續維護,有社區支持 。
Archery
項目地址:https://github.com/hhyo/Archery使用文檔:https://archerydms.com/Archery 定位于 SQL 審核查詢平臺,旨在提升 DBA 的工作效率,支持多數據庫的 SQL 上線和查詢,同時支持豐富的 MySQL 運維功能,所有功能都兼容手機端操作 。
Archery介紹
Archery首頁
主要功能:
集成 SQL 查詢、審核、執行、備份 。權限區分明確,審核執行分離 。SQL 工單自動審批、高危語句駁回 。快速上線其他實例 。慢日志管理、SQL 優化等運維功能 。支持會話管理及參數配置 。可集成其他工具插件 。
優點:
除 MySQL 外,還支持多種主流數據庫 。功能更加豐富,真正做到一平臺多用 。具備 SQL 優化、慢日志管理等運維功能,對 DBA 更加友好 。基于 Python 及 Django,利于二次開發改造 。
對于 Yearning 和 Archery ,兩者各有優缺點吧,都是優秀的開源工具 。Yearning 只適用于 MySQL ,部署簡單,功能清晰明了,上手容易 。Archery 支持多種數據庫,部署稍微復雜些,功能更加豐富,支持諸多高級運維功能 。沒有哪個更好,只有哪個更合適 。
2. binlog 解析工具
前面文章也介紹過 binlog 解析相關內容及工具 。利用 binlog 解析工具我們可以清楚看到數據庫執行過的歷史內容,并且可以得到反向內容可用于回滾 。binlog 解析工具在 GitHub 上可以搜索到許多,這里介紹下常用的以下兩款吧 。
MyFlash
項目地址:https://github.com/Meituan-Dianping/MyFlashMyFlash 是由美團點評公司技術工程部開發維護的一個回滾 DML 操作的工具 。該工具通過解析 v4 版本的 binlog ,完成回滾操作 。相對已有的回滾工具,其增加了更多的過濾選項,讓回滾更加容易 。
主要功能:
解析 binlog ,回滾各類 DML 語句 。提供原生的基于庫、表、SQL類型、位置、時間等多種過濾方式 。支持 MySQL 多個版本,支持 GTID 格式 。
binlog2sql
項目地址:https://github.com/danfengcao/binlog2sqlbinlog2sql 同樣是開源的一款用于解析 binlog 的工具 。安裝簡單方便,基于 Python 開發,源碼入門簡單 。
主要功能:
可以解析出原始 SQL 、回滾 SQL 、去除主鍵的 INSERT SQL 等 。數據快速回滾(閃回) 。主從切換后新 master 丟數據的修復 。3. Percona Toolkit 工具包
官網地址:https://www.percona.com/doc/percona-toolkit/3.0/index.html#Percona Toolkit 工具包是一組高級的管理 MySQL 的工具包集,可以用來執行各種通過手工執行非常復雜和麻煩的系統任務 。簡稱 PT 工具,由 Percona 公司開發維護,是廣大數據庫維護人員的好幫手 。
PT 工具包由各種小工具組成,不同工具有著不同的作用 。主要功能包括檢查主從復制的數據一致性、檢查重復索引、歸檔數據、在線DDL等 。下面簡單介紹下幾款常用工具的功能:
pt-archiver:主要用于清理、歸檔歷史數據 。pt-duplicate-key-checker:列出并刪除重復的索引和外鍵 。pt-kill:殺掉符合條件的數據庫連接 。pt-online-schema-change:在線修改表結構,常用于大表 DDL。pt-query-digest:分析 MySQL 日志,并產生報告,常用于慢日志分析 。pt-table-checksum:校驗主從復制一致性 。
總結:
【mysql的工具】本篇文章簡單介紹了 SQL 審核、binlog 解析、Percona Toolkit 幾類工具,關于各個工具的使用方法,還需各位詳細探索 。感興趣的同學可以安裝學習下,好的工具能讓工作事半功倍 。
- lol手游加速器永久免費版官方 免費加速LOL手游的加速器
- 建站軟件免費下載 免費的自助建站軟件
- 情話最暖心短句給女朋友,看了讓人哭的那種
- rsa加密解密算法原理 rsa的加密和解密原理
- 異地戀讓對方感動的話,思念代替我陪你
- 男人愛你的表現-他一見你就笑他自己卻不知道
- 甜到炸的句子2019,高甜請注重
- 撩女孩的套路情話句子,情話很美讓人心動
- 15句古風的表白情話,對西風無言與對愛情常相伴
- json格式在線轉換 json在線轉換工具
