Yearning MYSQL SQL語句稽核平臺。提供查詢審計,SQL稽核等多種功能
Feature 功能
SQL查詢查詢工單匯出自動補全,智慧提示查詢語句審計SQL稽核流程化工單SQL語句檢測與執行SQL回滾歷史稽核記錄推送E-mail工單推送釘釘webhook機器人工單推送使用者許可權及管理角色劃分基於使用者的細粒度許可權註冊其他todoListLDAP登入動態稽核規則配置AutoTask自動執行注意事項Yearning 不依賴於任何第三方SQL稽核工具作為稽核引擎,內部已自己實現稽核/回滾相關邏輯。
僅依賴Mysql資料庫。
mysql版本必須5.7及以上版本,請事先自行安裝完畢且建立Yearning庫,字符集應為UTF-8/UTF8mb4 (僅Yearning所需mysql版本)
Yearning日誌僅輸出error級別,沒有日誌即可認為無執行錯誤!
Yearning 基於1080p解析度開發僅支援1080p及以上顯示器訪問
由於使用較多新的前端技術棧,請使用Chrome最新版本(不包括360等其他魔改版本)
特別注意語法支援
Yearning 目前相容99%的Mysql 標準SQL語法。
但由於稽核邏輯等因素的限制,對一些SQL語句並不能保證得到正確的反饋
已知不支援的語句型別有:
複雜的查詢語句(多表,多函式,非必現。並不是所有複雜語句不支援)create table like 語句檢視語句外來鍵相關語句影響行數
Yearning採用Explain分析SQL語句的影響行數。由於Explain生成的影響行數受主鍵,索引等其他因素的影響,並不能100%保證其準確性。其更多的是反應了該語句導致的全表掃描行數,所以對於誤差較大的語句具有一定的優化參考意義。
預檢查
Yearning採用預檢查的方法進行SQL檢測,對於同一工單內新增並編輯的語句會產生欄位不存在的錯誤
例如
ALTER TABLE core_data_sources ADD t1 int( 11) DEFAULT 0 COMMENT '已退換貨數量';ALTER TABLE core_data_sources ADD t2 int( 11) DEFAULT 0 COMMENT '申請中數量' AFTER t1;該工單第二條語句依賴第一條語句建立的欄位。由於當前資料庫並沒有t1這個欄位,所以該工單檢測時會報錯t1欄位不存在的問題。
語句本身沒有問題因為在mysql執行中是逐條執行並檢測。當第一條執行後表內生成該欄位,第二條執行前檢測自然也就正常。
生成回滾語句
Yearning 採用解析binlog方式的方式獲得回滾語句。由於Mysql replication協議限制,必須擁有SUPER/REPLICATION SLAVE, REPLICATION CLIENT ,ALL PRIVILEGES 許可權的賬號才可以獲得binlog流。所以,如想體驗生成回滾語句備份功能,請確保對應填寫的資料來源賬號擁有相應許可權,同時對應資料來源應開啟binlog功能。
效果展示
-
1 #
-
2 #
老哥,穩,go版本的都用上了。
-
3 #
剛剛看了下,貌似開源的哦
現在阿里雲都自帶這樣的工具了吧