程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 利用SSIS打造MySQL監控工具

利用SSIS打造MySQL監控工具

編輯:MySQL綜合教程

批量監控Linux 下MySQL db層的工具相對匮乏,用SSIS DIY 了下.

使用 SSIS 包 讀取配置表信息來實現監控MySQL並根據實際情況由郵件反饋給DBA

1 整理個全局信息表包括ip以及監控維度等.

建表語句如下:

  1. CREATE TABLE [dbo].[all_host_info](  
  2.  [ip] [varchar](20) NULL,  
  3.  [isactive] [tinyint] NULL,  
  4.  [ishost] [tinyint] NULL,  
  5.  [isslave] [tinyint] NULL,  
  6.  [isjob] [tinyint] NULL,  
  7.  [isobject] [tinyint] NULL,  
  8.  [isprivileges] [tinyint] NULL 
  9. ) ON [PRIMARY] 

2 新建ssis 包 命名為 mysqlmonitor  並創建如下變量

3 在控制流中創建 TSQL_SLAVE  sql task 組件

建立oledb鏈接到  all_host_info 所在的sql 服務器,在sqlsourcetype 裡面輸入如下代碼

  1. select count(1) as j from all_host_info where isslave=1;  

並在 result set 選擇單行

在結果結果集中 輸入如下結果名稱 並指定到變量 j

4 新建TSQL_SLAVE_ID  TSQL TASK 組件

並鏈接至 TSQL_SLAVE 組件所用的 ole鏈接

5 新建個SCRIPT 組件 內容如下

6 新建個 FOR 循環 內容如下

7 在FOR 循環裡面拖入個數據流內容如下把 讀取的ip信息寫入到 object 變量裡面

8在for 組件裡 拖入個 FOReach_VAR foreach 組件 內容如下 用來拆分 OBJECT 變量 在變量映射裡面選擇 ip

9 拖入個數據流組件

10 發郵件

11 包最終組件如下

12 把包加載到job裡面 一小時發次郵件 其他維度的監控同原理。

練一技,修百藝,而成於自然.

編輯推薦】 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved