一款SQL自動(dòng)檢查神器,再也不用擔(dān)心SQL出錯(cuò)了,自動(dòng)補(bǔ)全、回滾等功能大全

來自:今日頭條,作者:最美分享Coder
鏈接:https://www.toutiao.com/a6757504816143958542/

介紹

Yearning MYSQL 是一個(gè)SQL語句審核平臺(tái)。提供查詢審計(jì),SQL審核等多種功能,支持Mysql,可以在一定程度上解決運(yùn)維與開發(fā)之間的那一環(huán),功能豐富,代碼開源,安裝部署容易!

image

開源地址

https://gitee.com/cookieYe/Yearning

功能介紹

  • SQL查詢查詢導(dǎo)出查詢自動(dòng)補(bǔ)全

  • SQL審核流程化工單SQL語句檢測SQL語句執(zhí)行SQL回滾

  • 歷史審核記錄

  • 查詢審計(jì)

  • 推送E-mail工單推送釘釘webhook機(jī)器人工單推送

  • 其他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)限

image
  • 我的工單

展示用戶提交的工單信息.,對(duì)于執(zhí)行失敗/駁回的工單點(diǎn)擊詳細(xì)信息后可以重新修改sql并提交

對(duì)于執(zhí)行成功的工單可以查看回滾語句并且快速提交SQL

image
  • 工單DLL

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

image
  • DML審核

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

image
  • 查詢

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

image
  • 工單審核

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

image
  • 查詢審核

用戶查詢審核

image
  • 權(quán)限審核

用戶權(quán)限審核

image
  • 用戶管理

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

image
  • 數(shù)據(jù)庫管理

添加/編輯/刪除 數(shù)據(jù)源

image
  • 用戶權(quán)限

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

image
  • 基礎(chǔ)設(shè)置和進(jìn)階設(shè)置

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

image
image
  • 審核規(guī)則

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

image

審核流程

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ù)庫。mysql版本必須5.7及以上版本,請(qǐng)事先自行安裝完畢且創(chuàng)建Yearning庫,字符集應(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ù)庫加解密key,只可更改一次。
SecretKey = "dbcjqheupqjsuwsm"
  • 初始化數(shù)據(jù)庫

./Yearning -m

  • 啟動(dòng)服務(wù)

默認(rèn)啟動(dòng)

參數(shù)啟動(dòng)

打開瀏覽器對(duì)應(yīng)端口 ,默認(rèn)密碼:admin/Yearning_admin

總結(jié)

Yearning是一個(gè)SQL審核平臺(tái),在一定程度上可以解決運(yùn)維與開發(fā)中間的問題,遺憾的是只支持Mysql,感興趣的可以嘗試下!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容