前言¶
排查一條慢查詢,要翻 slow log、跑 EXPLAIN、看 performance_schema;定位一次鎖等待,要在 processlist 和 SHOW ENGINE INNODB STATUS 之間來回對;再看複製是否延遲、表是否碎片嚴重。這些操作散落在多個系統裏,而且 kill 會話、SET GLOBAL、OPTIMIZE TABLE 這類寫操作一旦誤用代價很高。MySQL AIops 把這類 DBA 運維動作收斂到一個帶治理護欄(審計、策略、token 預算、撤銷、風險分級)的 Skill 裏,覆蓋讀巡檢和寫操作兩類場景。
這是什麼¶
MySQL AIops 是一個面向 MySQL 8.x / MariaDB 10.6+ 的 DBA 運維 Agent Skill,由社區開發者 @user_993b98b1 發佈維護,當前版本 0.13.0,分類爲 it-ops-security,來源標記爲 community。
它解決的問題是:把服務器健康檢查、查詢分析、鎖與複製故障定位、表和索引維護這些高頻 DBA 動作,變成結構化的、可校驗的操作流程,同時對高風險寫操作套上治理護欄。Skill 自帶一套基於 mock 的測試套件,官方在 docs/VERIFICATION.md 中給出了 live-verification checklist,說明其行爲經過了驗證而非僅靠 prompt 描述。
核心能力¶
下面按只讀巡檢、故障定位、受治理寫入三組介紹,能力均來自官方簡介。
服務器概覽與只讀巡檢¶
一次體檢即可拿到:版本與發行版類型(MySQL 還是 MariaDB)、連接餘量、當前是主庫還是從庫。之後可以讀取全局變量、狀態計數器、數據庫列表、存儲引擎分佈。
活動與鎖等待¶
覆蓋會話/進程列表、長運行查詢、未提交的 InnoDB 事務、鎖等待情況,用於回答”誰在堵誰”。
查詢統計¶
基於 performance_schema 的 statement digest 取 top-N,並可對目標語句執行 EXPLAIN FORMAT=JSON 獲取執行計劃。
索引與表健康¶
識別未使用的索引、冗餘/重複索引、索引基數;輸出表大小、data_free 碎片量、引擎與行格式狀態。
複製狀態¶
查看從庫 IO/SQL 線程狀態與延遲、binlog/GTID 狀態,覆蓋 seconds behind master/source 這類常見問法。
四類旗艦 RCA¶
這是 Skill 的核心分析能力,每類都輸出”引用了哪條證據、給出什麼結論和動作”:
1、慢查詢 RCA:定位最差的 digest,結合 EXPLAIN 給出結論,並區分全表掃描主導和鎖等待時間主導兩類成因。
2、InnoDB 鎖等待與死鎖鏈 RCA:構建 wait-for 樹,找出根阻塞者,並解析 SHOW ENGINE INNODB STATUS 中最近一次死鎖。
3、複製延遲 RCA:從線程狀態/錯誤字段推導成因並給出動作。
4、表碎片分析:基於 data_free 給出 OPTIMIZE 候選表。
受治理的寫入¶
寫入動作被顯式列出並分級,包括:kill 會話或查詢、OPTIMIZE TABLE / ANALYZE TABLE、創建/刪除索引、SET GLOBAL 變量、重置 digest 統計。這些操作在治理框架(審計、策略、token 預算、撤銷、風險分級)下執行。
安裝與啓用¶
Skill 座標與基本元信息如下:
座標: @user_993b98b1/mysql-aiops
版本: 0.13.0
來源: community
分類: it-ops-security
標籤: requires_api_key=true
官方頁面未提供標準 CLI 安裝命令,需在 SkillHub 頁面獲取啓用方式。requires_api_key=true 表示使用前需要 API key,請按官方頁面說明配置。
典型用法¶
Skill 通過自然語言觸發,官方給出的典型問法包括:
mysql health check
why is this query slow
top queries by time
EXPLAIN this
table fragmentation
which indexes are unused
redundant index
who is blocking whom
deadlock
kill the session holding the lock
replication lag
replica stopped
seconds behind master/source
OPTIMIZE this table
create/drop an index
SET GLOBAL max_connections
當上下文是 MySQL 或 MariaDB 數據庫時,上述問題都應交給該 Skill 處理。
適用場景與注意¶
適合:MySQL 8.x / MariaDB 10.6+ 的日常健康巡檢、慢查詢與鎖等待定位、複製故障排查、索引和表碎片維護。
注意:
- 僅支持 MySQL / MariaDB,PostgreSQL 請使用 postgres-aiops。
- 目標爲 OT/工業設備時使用 industrial-aiops;超售層、存儲設備、備份產品、容器/集羣編排器不在適用範圍,這些屬於負向路由提示。
- 寫操作(kill、SET GLOBAL、OPTIMIZE 等)有風險分級,仍建議在生產環境先在從庫或測試環境驗證。
- 需要 API key。
小結¶
MySQL AIops 的價值在於把 DBA 的高頻排障與維護動作結構化,並用治理護欄約束寫操作,適合作爲 MySQL/MariaDB 運維的常規 Skill。官方地址:https://www.skillhub.cn/skills/user_993b98b1/mysql-aiops