1.概述
mysql-monitor MYSQL 監控工具,優化工具,各種工具為一體的Java spring boot 項目
git地址:https://github.com/lccbiluox2/mysql-monitor.git
2. 代碼架構
3. 后端服務
后端服務的主類是com.neo.MySQLMointorApplication
3.1 后端服務的數據庫
spring.datasource.driverClassName?=?com.mysql.jdbc.Driver spring.datasource.url?=?jdbc:mysql://localhost:3306/mysql_monitor?useUnicode=true&characterEncoding=utf-8&useSSL=true spring.datasource.username?=?root spring.datasource.password?=?12345678
這個根據自己的需要進行修改。
SQL運行的腳本在doc/sql/mysql_monitor.sql請先執行建表操作,然后運行主類。
4.前端服務
前端主頁面:web-provider/html/database/database-list.html
因為是前后端分離,采用最原始的html+jquery+ajax操作后端并且顯示,解決了跨域的問題。直接打開頁面即可。
4.1 配置
前端的配置文件如下:web-provider/JS/constant.js
//定義幾個全局變量 var?AppUrl?=?"http://localhost:8090";//整個頁面的請求頁面
主要配置后端請求的地址。
5.效果如下
5.1 數據庫列表頁面
5.2 數據庫詳情頁面
5.3 表列表頁面
5.4 表詳情頁面
5.5 sql分析界面
后面還會開發更多功能。。。等待中。。
7.目標
最終目標是實現mysql運維監控一體化,而且是只針對MySQL的,其他的數據庫不管。主要目標是實現
開發人員以后只需要會用MySQL會用這個工具就行了,自動幫我們分析出表的不好的地方,以及SQL寫的不好的地方
讓開發人員靠著這個能當一個MySQL dba
目前想到的功能
-
SQL 執行優化,開發人員,寫了一個SQL,不知道性能好不好,只需要在頁面上,點擊輸入SQL,然后會模擬各種
-
執行,并且繪制成表格,顯示各種優化的SQL執行。這個要采用Antlr進行詞法分析,語法分析。
-
自動分析表結構,比如設置了varchar(100),如果你的數據只用了50個字節,那么算出你這個字段損失的空間,磁盤
-
自動采樣索引形成樹形圖,展示在頁面,讓我們對我們建立的索引有個大概的真實樣子
-
大量的性能監控圖
推薦教程:《MySQL教程》