SQL審核 | 如何用 SQLE 自動審核 Java 應(yīng)用

作者:孫健、張強(qiáng)

孫健,愛可生研發(fā)工程師,負(fù)責(zé) SQLE 相關(guān)開發(fā);張強(qiáng):愛可生研發(fā)中心成員,后端研發(fā)工程師,目前負(fù)責(zé) DMP 產(chǎn)品 Redis 相關(guān)業(yè)務(wù)開發(fā)。

本文來源:原創(chuàng)投稿

* 愛可生開源社區(qū)出品,原創(chuàng)內(nèi)容未經(jīng)授權(quán)不得隨意使用,轉(zhuǎn)載請聯(lián)系小編并注明來源。

一. SQLE 介紹

SQLE 是一款由愛可生開源社區(qū)發(fā)起,面向數(shù)據(jù)庫開發(fā)與管理人員,實(shí)現(xiàn)了 SQL 的「開發(fā)」-「測試」-「上線」等全流程覆蓋,資源與權(quán)限精細(xì)化管理,兼顧簡潔與高效,易維護(hù)、易擴(kuò)展的的開源項(xiàng)目,旨在為用戶提供一套的安全可靠、自主可控的 SQL 質(zhì)量管控方案。

在二月份發(fā)布的 1.2202.0 版本中:

● 改造了用戶系統(tǒng),新增用戶組和操作權(quán)限;

● 增加對工單審核結(jié)果進(jìn)行評分的功能;

● 增加審核任務(wù),支持 MySQL 的庫表結(jié)構(gòu)、Oracle 的 TopSQL以及 Java 應(yīng)用的 SQL 抓取和審核;

● 增加了 Db2 審核插件,支持 Db2 審核工單并上線;

● 新增了 37 條 MySQL 審核規(guī)則,如檢查 DDL 是否創(chuàng)建了冗余的索引;

● 其他體驗(yàn)優(yōu)化和 Bug 修復(fù)。

二. Java 應(yīng)用審核介紹

(友情提示:此為企業(yè)版功能)考慮到很多用戶在實(shí)際生產(chǎn)中已經(jīng)部署了大量的、以 Java 為基礎(chǔ)的應(yīng)用和服務(wù),并且某些已經(jīng)涉及到了極其重要、不可中斷的核心業(yè)務(wù)。從 1.2202.0 版本開始,SQLE 開始支持 Java 應(yīng)用的 SQL 審核。并且在完成核心功能的基礎(chǔ)上,支持 Java 應(yīng)用零成本接入 。

SQLE 的 Java 審核特性如下:

● 支持無侵入式的業(yè)務(wù)集成,用戶可以直接以環(huán)境變量的方式運(yùn)行來啟動 Java 應(yīng)用,直接接入 SQLE 而無需修改 Java 業(yè)務(wù)代碼,減少了用戶接入成本;

● 支持應(yīng)用 SQL 的自動采集和統(tǒng)計(jì),用戶可以在 SQLE 上通過語句池頁面統(tǒng)覽應(yīng)用內(nèi)的 SQL 的分類與統(tǒng)計(jì),迅速掌握應(yīng)用內(nèi) SQL 的情況;

● 支持手動或自動審核 SQL ,用戶可以在審核報告中知曉應(yīng)用的 SQL 是否符合預(yù)設(shè)的審核規(guī)則,無論是開發(fā)人員還是 DBA 都能實(shí)時了解正在運(yùn)行的業(yè)務(wù) SQL 執(zhí)行狀況。

三. 效果展示

1. 事先部署好環(huán)境、需要接入的 Java 應(yīng)用以及對應(yīng)的數(shù)據(jù)庫,并添加為數(shù)據(jù)源。為了演示,此處 Java 項(xiàng)目為

2. 創(chuàng)建 Java 應(yīng)用的審核任務(wù);

3. 啟動應(yīng)用程序;

SQLE_COLLECT_ENABLE=true SQLE_HOST=XX.XX.XX.XX:10000 SQLE_TASK_NAME=surveryking_test SQLE_TASK_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcG4iOiJqd19hcHAiLCJleHAiOjE2NzcyMjYxNzcsIm5hbWUiOiJhZG1pbiJ9.3d0pA1hiVnFEWJokSFBwCT8d1pKOYV6SViENj4GFqgI java -jar surveyking-v0.3.0-beta.4.jar --server.port=1991 --spring.datasource.url=jdbc:mysql://XX.XX.XX.XX:3306/surveyking --spring.datasource.username=root --spring.datasource.password=xxxxxx & >>/opt/surveyking/std.log

4. 查看 SQLE 審核任務(wù)詳情界面,可以看到目前應(yīng)用已經(jīng)執(zhí)行的 SQL ;

5. 查看審核報告,用戶可以通過審核任務(wù)的審核報告了解到應(yīng)用的 SQL 是否符合預(yù)設(shè)審核規(guī)則以便及時作出調(diào)整。

6. 在示例 Java 應(yīng)用主頁創(chuàng)建一個用戶,然后便可以在審核任務(wù)對應(yīng)的 SQLE 語句池內(nèi)觀察到所對應(yīng)的 INSERT 語句。

7. 同時,用戶可以從語句池內(nèi)頁面迅速地感知到應(yīng)用內(nèi)執(zhí)行的 SQL 的語句分類和統(tǒng)計(jì)情況。

綜合以上的示例步驟,Java 應(yīng)用零成本地接入了 SQLE。開發(fā)人員和 DBA 可以通過「審核報告」、「審核任務(wù)的 SQL 語句池」等功能完全掌握應(yīng)用內(nèi)的 SQL 審核結(jié)果、執(zhí)行情況以及統(tǒng)計(jì)信息,完成了從「開發(fā)」直至「上線」這一過程中的 SQL 質(zhì)量管控。

本文關(guān)鍵字:#SQLE# #SQL審核##Java應(yīng)用審核# #審核任務(wù)#

有更多關(guān)于 SQLE相關(guān)的技術(shù)問題,可以掃碼或直接加入官方QQ技術(shù)交流群(637150065)進(jìn)行交流。歡迎大家來“騷擾”...


微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

      最新招聘信息