參考鏈接
https://www.toutiao.com/a6757504816143958542/
說明介紹
提供查詢審計,SQL審覈等多種功能,支持Mysql,可以在一定程度上解決運維與開發之間的那一環,功能豐富,代碼開源,安裝部署容易!
功能介紹
- SQL查詢查詢導出查詢自動補全
- SQL審覈流程化工單SQL語句檢測SQL語句執行SQL回滾
- 歷史審覈記錄
- 查詢審計
- 推送E-mail工單推送釘釘webhook機器人工單推送
- 其他LDAP登陸用戶權限及管理拼圖式細粒度權限劃分(共12項獨立權限,可隨意組合)
項目地址
https://gitee.com/cookieYe/Yearning
頁面展示
審覈管理
審覈流程
Yearning採用二級/多級的審覈模式,可根據實際需求變更相關使用流程,執行人角色必須在開啓多級審覈之後纔可指定(開啓請前往設置頁面),如果需要將多級審覈改爲二級審覈,請先確保所有多級審覈的工單都已確認執行。否則未執行工單將無法找回。當多級審覈關閉後系統並不會自動將角色爲執行人的用戶重置角色,請自行重置相應用戶角色
二級審覈流程:
1.使用人根據自己擁有的權限向對應的工單提交單元(DDL,DML)提交工單
2.管理員收到消息後在審覈工單頁面審覈該工單請求並執行/駁回 對應工單
3.執行記錄將會記錄在該管理員用戶下
多級審覈流程:
1.使用人根據自己擁有的權限向對應的工單提交單元(DDL,DML)提交工單,
2.管理員收到消息後在審覈工單頁面審覈該工單請求並同意/駁回 對應工單並選擇對應執行人(執行人必須是角色爲執行人的用戶)
3.執行人收到工單後 執行/駁回該工單
4.執行記錄將會記錄在該執行人用戶下
部署
Yearning 不依賴於任何第三方SQL審覈工具作爲審覈引擎,內部已自己實現審覈/回滾相關邏輯。僅依賴Mysql數據庫。mysql版本必須5.7及以上版本,請事先自行安裝完畢且創建Yearning庫,字符集應爲UTF-8/UTF8mb4 (僅Yearning所需mysql版本)Yearning日誌僅輸出error級別,沒有日誌即可認爲無運行錯誤!Yearning 基於1080p分辨率開發僅支持1080p及以上顯示器訪問(可到官網下載二進制文件)
https://github.com/cookieY/Yearning/releases/download/v2.2.1/Yearning-2.2.1.linux-amd64.zip
1、解壓後修改配置文件
cat conf.toml
[Mysql]
Db = "Yearning"
Host = "127.0.0.1"
Port = "3306"
Password = "xxxx"
User = "root"
[General] #數據庫加解密key,只可更改一次。
SecretKey = "dbcjqheupqjsuwsm"
初始化數據庫./Yearning -m
查看數據庫的字符集MySQL [(none)]> select SCHEMA_NAME,DEFAULT_CHARACTER_SET_NAME,DEFAULT_COLLATION_NAME,SQL_PATH from information_schema.SCHEMATA;
啓動服務及相關參數
參數啓動nohup ./Yearning -s &
打開瀏覽器對應端口 ,默認密碼:admin/Yearning_admin
報錯及解決
[root@test3-3 Yearning-go]# ./Yearning -m
Error 1045: Access denied for user ''@'127.0.0.1' (using password: NO)
MySQL [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'etiir2020' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.05 sec)
需要再數據庫中創建Yearning數據庫,並且字符集爲utf8mb4;