一款 SQL 自動(dòng)檢查神器
文 | 酷頭
來源:印象python

開源地址
https://gitee.com/cookieYe/Yearning
功能介紹
1、SQL查詢查詢導(dǎo)出查詢自動(dòng)補(bǔ)全
2、SQL審核流程化工單SQL語句檢測(cè)SQL語句執(zhí)行SQL回滾
3、歷史審核記錄
4、查詢審計(jì)
5、推送E-mail工單推送釘釘webhook機(jī)器人工單推送
6、其他LDAP登陸用戶權(quán)限及管理拼圖式細(xì)粒度權(quán)限劃分(共12項(xiàng)獨(dú)立權(quán)限,可隨意組合)
模塊介紹
Dashboard
dashboard主要展示Yearning各項(xiàng)數(shù)據(jù)包括用戶數(shù)/數(shù)據(jù)源數(shù)/工單數(shù)/查詢數(shù)以及其他圖表,個(gè)人信息欄內(nèi)用戶可以修改密碼/郵箱/真實(shí)姓名,同時(shí)可以查看該用戶權(quán)限以及申請(qǐng)權(quán)限

我的工單
展示用戶提交的工單信息.,對(duì)于執(zhí)行失敗/駁回的工單點(diǎn)擊詳細(xì)信息后可以重新修改sql并提交
對(duì)于執(zhí)行成功的工單可以查看回滾語句并且快速提交SQL

工單DLL
DDL相關(guān)SQL提交審核,查看表結(jié)構(gòu)/索引,SQL語法高亮/自動(dòng)補(bǔ)全

DML審核
DML相關(guān)SQL提交審核,SQL語法高亮/自動(dòng)補(bǔ)全

查詢
查詢/導(dǎo)出數(shù)據(jù) SQL語法高亮/自動(dòng)補(bǔ)全 快速DML語句提交

工單審核
DDL/DML管理員審核并執(zhí)行

查詢審核
用戶查詢審核

權(quán)限審核
用戶權(quán)限審核

用戶管理
創(chuàng)建/修改/刪除用戶

數(shù)據(jù)庫(kù)管理
添加/編輯/刪除 數(shù)據(jù)源

用戶權(quán)限
用戶權(quán)限修改/清空

基礎(chǔ)設(shè)置和進(jìn)階設(shè)置
設(shè)置消息推送相關(guān)信息 包括釘釘機(jī)器人/email,設(shè)置LDAP相關(guān)信息,全局配置信息,全局配置開關(guān)


審核規(guī)則
設(shè)置SQL檢測(cè)規(guī)則

審核流程
Yearning采用二級(jí)/多級(jí)的審核模式,可根據(jù)實(shí)際需求變更相關(guān)使用流程,執(zhí)行人角色必須在開啟多級(jí)審核之后才可指定(開啟請(qǐng)前往設(shè)置頁面),如果需要將多級(jí)審核改為二級(jí)審核,請(qǐng)先確保所有多級(jí)審核的工單都已確認(rèn)執(zhí)行。否則未執(zhí)行工單將無法找回。當(dāng)多級(jí)審核關(guān)閉后系統(tǒng)并不會(huì)自動(dòng)將角色為執(zhí)行人的用戶重置角色,請(qǐng)自行重置相應(yīng)用戶角色
二級(jí)審核流程:
1、使用人根據(jù)自己擁有的權(quán)限向?qū)?yīng)的工單提交單元(DDL,DML)提交工單
2、管理員收到消息后在審核工單頁面審核該工單請(qǐng)求并執(zhí)行/駁回 對(duì)應(yīng)工單
3、執(zhí)行記錄將會(huì)記錄在該管理員用戶下
多級(jí)審核流程:
1、使用人根據(jù)自己擁有的權(quán)限向?qū)?yīng)的工單提交單元(DDL,DML)提交工單,
2、管理員收到消息后在審核工單頁面審核該工單請(qǐng)求并同意/駁回 對(duì)應(yīng)工單并選擇對(duì)應(yīng)執(zhí)行人(執(zhí)行人必須是角色為執(zhí)行人的用戶)
3、執(zhí)行人收到工單后 執(zhí)行/駁回該工單
4、執(zhí)行記錄將會(huì)記錄在該執(zhí)行人用戶下
安裝(這部分可以直接接到碼云或者官網(wǎng)查看)
Yearning 不依賴于任何第三方SQL審核工具作為審核引擎,內(nèi)部已自己實(shí)現(xiàn)審核/回滾相關(guān)邏輯。僅依賴Mysql數(shù)據(jù)庫(kù),mysql版本必須5.7及以上版本,請(qǐng)事先自行安裝完畢且創(chuàng)建Yearning庫(kù)。
字符集應(yīng)為UTF-8/UTF8mb4 (僅Yearning所需mysql版本)Yearning日志僅輸出error級(jí)別,沒有日志即可認(rèn)為無運(yùn)行錯(cuò)誤!Yearning 基于1080p分辨率開發(fā)僅支持1080p及以上顯示器訪問(可到官網(wǎng)下載二進(jìn)制文件)
填寫配置文件
cat conf.toml
[Mysql]
Db =?"Yearning"
Host =?"127.0.0.1"
Port =?"3306"
Password =?"xxxx"
User =?"root"
[General]?#數(shù)據(jù)庫(kù)加解密key,只可更改一次。
SecretKey =?"dbcjqheupqjsuwsm"初始化數(shù)據(jù)庫(kù)
./Yearning -m啟動(dòng)服務(wù)
打開瀏覽器對(duì)應(yīng)端口 ,默認(rèn)密碼:admin/Yearning_admin
總結(jié)
Yearning是一個(gè)SQL審核平臺(tái),在一定程度上可以解決運(yùn)維與開發(fā)中間的問題,遺憾的是只支持Mysql,感興趣的可以嘗試下!
重磅!程序員交流群已成立
公眾號(hào)運(yùn)營(yíng)至今,離不開小伙伴們的支持。
為了給小伙伴們提供一個(gè)互相交流的平臺(tái),特地開通了程序員交流群
群里有不少技術(shù)大神,不時(shí)會(huì)分享一些技術(shù)要點(diǎn),更有一些資源收藏愛好者不時(shí)分享一些優(yōu)質(zhì)的學(xué)習(xí)資料。(群完全免費(fèi),不廣告不賣課!)
需要進(jìn)群的朋友,可長(zhǎng)按掃描下方二維碼。
▲長(zhǎng)按掃碼
