Yearning簡介 mysql
=================linux
Yearning MYSQL 是一個SQL語句審覈平臺。提供查詢審計,SQL審覈等多種功能,支持Mysql,能夠在必定程度上解決運維與開發之間的那一環,功能豐富,代碼開源,安裝部署容易!git
項目地址:https://gitee.com/cookieYe/Ye...
Yearning 1.x版本需inception提供SQL審覈及回滾功能。github
Yearning 2.0開始無需依賴Inception,已本身實現了SQL審覈/回滾功能web
Yearning 功能介紹 sql
================docker
Yearning 不依賴於任何第三方SQL審覈工具做爲審覈引擎,內部已本身實現審覈/回滾相關邏輯。數據庫
Yearning-go官方提供二進制下載包,下載地址 https://github.com/cookieY/Ye...。選擇你所須要下載的軟件包進行下載。vim
源碼安裝:你先須要安裝一些依賴等,一些相關的安裝步驟以下:瀏覽器
[root@test ~]# git clone https://github.com/cookieY/Yearning.git [root@test ~]# mv Yearning /usr/local/yearning [root@test ~]# cd /usr/local/yearning/ [root@test yearning]# cd install/ [root@test install]# ll total 26728 -rw-r--r-- 1 root root 57763 Apr 23 16:06 connections.py -rw-r--r-- 1 root root 16818 Apr 23 16:06 cursors.py -rw-r--r-- 1 root root 679 Apr 23 16:06 docker_start.sh -rw-r--r-- 1 root root 27270656 Apr 23 16:06 inception.tar -rw-r--r-- 1 root root 11762 Apr 23 16:06 Yearning.sh [root@test install]# tar xf inception.tar [root@test install]# cd inception/bin/ [root@test bin]# ll total 12472 -rw-r--r-- 1 501 games 722 Jan 3 10:39 inc.cnf -rwxr-xr-x 1 501 games 9016999 Oct 12 2017 Inception -rwxr-xr-x 1 501 games 3747312 Oct 12 2017 mysql
不過如今官方讓直接下載.zip包,直接解壓便可(因此這裏就不建議使用源碼安裝了),比較方便。
mysql> create database Yearning default character set utf8mb4 collate utf8mb4_unicode_ci;Query OK, 1 row affected (0.00 sec)
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | Yearning | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.00 sec)
只須要提早安裝好Mysql數據庫,並按前面的要求進行配置便可。
[root@CentOS7-1 ~]# ll total 14036 -rw-------. 1 root root 1320 Apr 8 05:08 anaconda-ks.cfg -rw-r--r-- 1 root root 14349178 Apr 11 09:26 Yearning-2.2.0.linux-amd64.zip
上面咱們直接從github上下載的最新版本2.2.0:
[root@CentOS7-1 ~]# cd Yearning-go/ [root@CentOS7-1 Yearning-go]# ll total 9772 -rw-r--r-- 1 root root 127 Aug 1 2019 conf.toml drwxr-xr-x 6 root root 116 Apr 6 22:32 dist -rw-r--r-- 1 root root 620 Jan 8 21:06 docker-compose.yml -rw-r--r-- 1 root root 597 Aug 21 2019 Dockerfile -rw-r--r-- 1 root root 177 Aug 23 2019 # README -rwxr--r-- 1 root root 9985356 Apr 6 22:35 Yearning -rw-r--r-- 1 root root 283 Jan 15 03:55 yearning.service
修改配置文件
vim conf.toml [Mysql] Db = "Yearning" Host = "127.0.0.1" Port = "3306" Password = "xxxx" User = "root" [General] #數據庫加解密key,只可更改一次。 SecretKey = "dbcjqheupqjsuwsm"
SecretKey是token/數據庫密碼加密/解密的salt。建議全部用戶在初次安裝Yearning以前將SecretKey更改(不更改將存在安全風險),格式: 大小寫字母都可, 長度必須爲16位。特別注意:此key僅可在初次安裝時更改!以後不可再次更改!如再次更改會致使以前已存放的數據源密碼沒法解密,最終致使沒法獲取相關數據源信息。
初始化
./Yearning -m
務必在-s啓動前首先執行-m 初始化操做!如要再次初始化,須要把yearning庫下全部表刪除,不然重複執行無效。
啓動服務
#默認啓動 ./Yearning -s #參數啓動 ./Yearning -s -b "192.168.1.9" -p "8000"
使用幫助
[root@CentOS7-1 Yearning-go]# ./Yearning -h version: Yearning/2.2.0 general author: HenryYee Usage: Yearning [-m migrate] [-p port] [-s start] [-b web-bind] [-h help] [-c config file] Options: -s 啓動Yearning -m 數據初始化(第一次安裝時執行) -p 端口 -b 釘釘/郵件推送時顯示的平臺地址 -x 表結構修復,升級時能夠操做。如出現錯誤可直接忽略。 -h 幫助 -c 配置文件路徑 -k 用戶權限變動爲權限組(2.1.7如下升級至2.1.7及以上使用) -f 初始化Admin用戶密碼
打開瀏覽器 http://192.168.1.9:8000
默認密碼:admin/Yearning_admin
相關功能模塊介紹
一、用戶模塊
Dashboard:dashboard主要展現Yearning各項數據包括用戶數/數據源數/工單數/查詢數以及其餘圖表,我的信息欄內用戶能夠修改密碼/郵箱/真實姓名,同時能夠查看該用戶權限以及申請權限(申請權限2.1.7版本後做廢)。
個人工單:展現用戶提交的工單信息,對於執行失敗/駁回的工單點擊詳細信息後能夠從新修改sql並提交,對於執行成功的工單能夠查看回滾語句而且快速提交SQL。
工單DLL:DDL相關SQL提交審覈,查看錶結構/索引,SQL語法高亮/自動補全。
DML審覈:DML相關SQL提交審覈,SQL語法高亮/自動補全。
查詢:查詢/導出數據 SQL語法高亮/自動補全 快速DML語句提交。
二、審覈模塊
工單審覈:DDL/DML管理員審覈並執行。
查詢審覈:用戶的查詢審覈。
權限審覈:用戶的權限審覈(2.1.7版本如下)
三、管理管理模塊
用戶管理:建立/修改/刪除用戶
數據庫管理:添加/編輯/刪除 數據源
用戶權限:用戶權限修改/清空
功能設置:設置消息推送相關信息 包括釘釘機器人/email,設置LDAP相關信息,全局配置信息,全局配置開關
審覈規則:設置SQL檢測規則
AutoTask自動執行任務
2.1.4版本新增:用戶可經過改功能設置自動執行任務。當提交的dml語句符合相應任務條件。將會自動執行,無需審覈人審覈。該功能僅限dml語句使用。請慎重使用!
Yearning是一個SQL審覈平臺,在必定程度上能夠解決運維與開發中間的問題,遺憾的是隻支持Mysql,感興趣的能夠嘗試下!
參考資料:
https://guide.yearning.io/
https://gitee.com/cookieYe/Ye...