添加數據需要知道往哪張表添加,以及自己要添加的內容,然後可用insert語句執行。
1、以sqlserver2008r2為例,登錄SQL Server Management Studio到指定的資料庫。
2、登錄後點擊「新建查詢」。
『貳』 如何使cacti監控mysql伺服器
cacti監控mysql資料庫的方法
環境:
Cactiez或者cacti主機:192.168.12.5
被監控mysql資料庫主機:192.168.5.231
1. 安裝監控插件
cd /opt
tar -xzvf mysql-cacti-templates-1.1.2.tar.gz
cp /opt/mysql-cacti-templates-1.1.2/ss_get_mysql_stats.php /var/www/html/scripts/
其實裡面我們要監控mysql用到的是:acti_host_template_x_db_server_ht_0.8.6i.xml和mysql_definitions.pl
其他則是監控Apache和Nginx的,接下來我們會介紹到,這里不再詳細的講了。
chown -R apache.apache /var/www/html/scripts
chmod -R 755 /var/www/html/scripts
使用 http 訪問 cacti主機 導入
/opt/mysql-cacti-templates-1.1.2/cacti_host_template_x_db_server_ht_0.8.6i.xml
http://192.168.12.5
默認CactiEZ 和Cacti別是 admin admin
控制台 - 導入導出 - 模板導入 - 瀏覽
選中 cacti_host_template_x_db_server_ht_0.8.6i.xml
保存
2. 配置cacti的mysql插件
修改 ss_get_mysql_stats.php
vi /var/www/html/scripts/ss_get_mysql_stats.php
$mysql_user = 'cacti';
$mysql_pass = 'cacti';
$cache_dir = "/tmp/cacti/cache/";
這個賬戶和密碼是 被監控端主機 給 Cacti主機 授權的 賬戶和密碼
Cacti需要這個賬戶和密碼去連接 被監控機 查詢狀態
mkdir -p /tmp/cacti/cache
chown -R apache.apache /tmp/cacti
chmod -R 755 /tmp/cacti
設置 cacti 緩存目錄在 /tmp/cacti/cache/ 並給予許可權
3. 配置被監控端(192.168.5.231)的mysql 給 cacti 主機授權
mysql -uroot -p
grant process,super on *.* to 'cacti'@'192.168.12.5' identified by 'cacti';
exit
grant process,super on *.* to '賬戶'@'Cacti主機IP地址' identified by '密碼';此命令意義
只允許IP為 192.168.12.5 的主機 以賬戶 cacti 密碼 cacti 去訪問 本機數據
4. 在Cacti主機上(192.168.12.5) 監控Mysql
4.1 為主機添加mysql模塊
控制台 - 管理 - 設備 - 選中之前創建好的主機
然後移到最下面的 添加圖形模版 選中 Mysql相關模塊 然後保存
4.2 為mysql模塊創建圖形
控制台 - 創建 - 創建圖形 - 選中該主機 - 選中mysql模塊 - 創建
4.3 插件mysql性能數據
監視器 - 選中該主機 - 查閱對應的mysql
完畢
-----一些資料庫操作語句
mysqld_safe --user=mysql &
mysql -uroot -p
mysql -uroot -proot
grant ALL PRIVILEGES ON *.* to 『root』@"%" identified by "root" WITH GRANT OPTION;
exit
grant select,insert,update,delete on cacti.* to 『cacti』@」*」identified by "cacti";
exit
grant process,super on *.* to 'cacti'@'%' identified by 'cacti';
grant all privileges on cacti.* to 『cacti』@"%" identified by "cacti";
客戶端開啟Cacti訪問本機mysql的許可權
grant process,super on *.* to 'cacti'@'192.168.12.5' identified by 'cacti';
grant process,super on *.* to 'cacti'@'192.168.5.231' identified by 'cacti';
= = = = =
mysql -ucacti -pcacti -h 192.168.5.231
『叄』 現在的SQLSERVER資料庫監控軟體有哪些
收集了一下當前SQLSERVER資料庫監控軟體,發現開源免費的真的是「沒有」
Questsoftware Quest's spotlight
Idera's SQLDiagnosticManager
red-gate sql-monitor
Cacti(免費 開源 這個工具准確來講應該算是伺服器監控不算是SQLSERVER監控)
微軟的SCCM
Idera's sql check
windbmonitor
Questsoftware Foglight for SQL Server
sqlsentry (sql哨兵) Performance Advisor for SQL Server
『肆』 cacti遷移到一台正在使用的cacti中去
不要歷史數據,將另一台cacti主機上的host配置直接在目標主機上依次新建就可以了,沒啥需要注意的.
『伍』 常用的監控協議有哪些
一、監控系統
1、監控系統概念
監控系統應用在監控硬體、軟體和業務上,並及時獲取相應的數據並分析保存數據,發送報警通知管理者,並自動做出相應的處理,通過介面展示以利於運維人員分析,保證業務的正常運行。
2、運維監控系統具備以下幾個模塊:
采樣:從被監控主機上周期性地獲取某個關注指標相關的數據,常見獲取數據通道有:ssh/telnet、agent、IPMI、SNMP、JMX等等
存儲:用於存儲被監控主機采樣的數據和分析的數據,利於調用和分析,常用的有mysql、mariadb等資料庫
數據:分析被監控主機采樣數據,計算出歷史數據、趨勢數據、速率、最大最小值等等。
展示:將被監控主機的數據通過圖表方式展現出來,利於觀察比對,常見的展示介面有:webGUI、GUI、APP等等。
報警:當被監控主機發生異常時,系統用於通知相關人員的報警媒介。常用的報警媒介有:郵件、簡訊、微信或通過腳本實施。
3、被監控對象: 主機、伺服器、交換機、路由器、ups等
nms:網路監控主機NMS是移動通信網中的網路管理系統,它的管理對象可以包括網路中所有的實體,如:網路設備、應用程序、伺服器系統、路由器、交換機、HUB、輔助設備(如UPS電源)等,給網路系統管理員提供一個全系統的網路視圖。
4、監控系統採取的數據通道
ssh/telnet:安全傳輸協議
agent方式:代理方式,由監控主機(master)和安裝代理進程的被監控主機(agent)組成
ipmi:因特爾智慧平台,硬體監控介面
snmp:簡單網路管理協議,版本有 v1,v2(community ,pulic)v3
JMX:java管理擴展
jvm:監控java虛擬機
5、儲存系統
歷史數據 :每次采樣的結果。保存時長較短
趨勢數據: 聚合數據,保存時長較長周期內的數據
存儲系統:
關系型資料庫: mysql pgsql oracle
rrd: roudrobin database
nosql:redis、mongo、時間序列資料庫
二、常見的開源監控項目
1、cacti
Cacti是一套基於PHP,MySQL,SNMP及RRDTool開發的網路流量監測圖形分析工具。
2、nagios
Nagios是一款開源的免費網路監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網路設備,列印機等。在系統或服務狀態異常時發出郵件或簡訊報警第一時間通知網站運維人員,在狀態恢復後發出正常的郵件或簡訊通知。
cacti和nagios這兩個功能上有所欠缺
3、ganglia
Ganglia是UC Berkeley發起的一個開源集群監視項目,設計用於測量數以千計的節點。Ganglia的核心包含gmond、gmetad以及一個Web前端。主要是用來監控系統性能,如:cpu 、mem、硬碟利用率, I/O負載、網路流量情況等,通過曲線很容易見到每個節點的工作狀態,對合理調整、分配系統資源,提高系統整體性能起到重要作用。
4、zebbix
功能齊備且好用
zabbix是一個基於WEB界面的提供分布式系統監視以及網路監視功能的企業級的開源解決方案。
zabbix能監視各種網路參數,保證伺服器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各種問題。
zabbix由2部分構成,zabbix server與可選組件zabbix agent。
zabbix server可以通過SNMP,zabbix agent,ping,埠監視等方法提供對遠程伺服器/網路狀態的監視,數據收集等功能,它可以運行在Linux等多種平台上。
三、SNMP協議
1、SNMP概念
SNMP是基於TCP/IP協議族的網路管理標准,是一種在IP網路中管理網路節點(如伺服器、工作站、路由器、交換機等)的標准協議。SNMP能夠使網路管理員提高網路管理效能,及時發現並解決網路問題以及規劃網路的增長。網路管理員還可以通過SNMP接收網路節點的通知消息以及告警事件報告等來獲知網路出現的問題。
2、SNMP版本
SNMP主要有三個版本,SNMPv1,SNMPv2,SNMPv3。
SNMPv1是最初始的版本,實現簡單,存在較多安全缺陷。
SNMPv2本質上與SNMPv1相同,只是在前一個版本功能上做了加強,並增加了getbulk操作,還增加了一些更加直觀的錯誤響應
SNMPv3解決了兩個版本在安全上的問題,採用了USM和VACM技術,增加了更強的認證機制。
目前使用最多的依然是SNMPv1版。有些廠家的IT設備中,還不支持SNMPv3
3、 術語
縮略語 -------------英文全稱-------------- 中文解釋
MIB ----Management Information Base ------管理信息庫
NMS ------Network Managerment Station -------網路管理站
OID ------Object Identifier -------對象標識符
SNMP ------Simple Network Management Protocol-------- 簡單網路管理協議
SMI -----Structure of Management Information ------管理信息機構
USM -----User-based Security Model -----基於用戶的安全模型
VACM ------View-based Access Control Model ------基於視圖的訪問控制模型
PDU ------Protocol data unit -------協議數據單元
4、SNMP管理的網路主要由三部分組成:
被管理的設備
SNMP代理
網路管理系統(NMS)
網路結構
網路中被管理的每一個設備都存在一個管理信息庫(MIB)用於收集並儲存管理信息。通過SNMP協議,NMS能獲取這些信息。被管理設備,又稱為網路單元或網路節點,可以是支持SNMP協議的路由器、交換機、伺服器或者主機等等。
SNMP代理是被管理設備上的一個網路管理軟體模塊,擁有本地設備的相關管理信息,並用於將它們轉換成與SNMP兼容的格式,傳遞給NMS。
NMS運行應用程序來實現監控被管理設備的功能。另外,NMS還為網路管理提供大量的處理程序及必須的儲存資源。
5、MIB管理信息庫
IETF規定的管理信息庫MIB(由中定義了可訪問的網路設備及其屬性,由對象識別符(OID:Object Identifier)唯一指定。MIB是一個樹形結構,SNMP協議消息通過遍歷MIB樹形目錄中的節點來訪問網路中的設備。下圖給出了NMS系統中SNMP可訪問網路設備的對象識別樹(OID:Object Identifier)結構。
網路設備的對象識別樹
對一個線路狀態進行查詢的OID設置例子
『陸』 cacti使用
apache2.2.8+mysql5.0.51+php5.2.5+snmp5.14+rrdtool+cacti 配置
OS fedora7 安裝選包定製
全選開發包
伺服器 一個沒選
本機IP 192.168.1.254
安裝 mysql
所有安裝程序 在 /usr/local下
[root@localhost usr]# groupadd mysql
[root@localhost usr]# useradd -g mysql mysql
[root@localhost usr]# cd /usr/local
[root@localhost local]# tar -zxvf mysql-5.0.51.tar.gz
[root@localhost local]# cd mysql-5.0.51
[root@localhost mysql-5.0.51# ./configure --prefix=/usr/local/mysql
[root@localhost mysql-5.0.51]# make
[root@localhost mysql-5.0.51]# make install
[root@localhost mysql-5.0.51]# cd ../mysql
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql var
[root@localhost mysql]# chgrp -R mysql .
[root@localhost mysql]# ./bin/mysqld_safe --user=mysql &
[root@localhost mysql]# ./bin/mysqladmin -uroot password mysql
[root@localhost mysql]# cp ../mysql-5.0.51/support-files/my-large.cnf /etc/my.cnf
[root@localhost mysql]# cp ../mysql-5.0.51/support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@localhost mysql]# chkconfig --add mysqld
[root@localhost mysql]# chkconfig --level mysqld 345 on
[root@localhost mysql]# chkconfig --list mysqld
[root@localhost mysql]#
Mysql 安裝結束
安裝apache
[root@localhost usr]# tar -zxvf httpd-2.2.8.tar.gz
[root@localhost usr]# cd httpd-2.2.8
[root@localhost httpd-2.2.8]# ./configure --prefix=/usr/local/apache --enable-mods-shared=all --enable-so
[root@localhost httpd-2.2.8]# make;make install
[root@localhost httpd-2.2.8]# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.2.8]# cd /etc/rc3.d
[root@localhost rc3.d]# ln -s /etc/init.d/httpd S85httpd
[root@localhost rc3.d]# ln -s /etc/init.d/httpd K85httpd
[root@localhost rc3.d]# /usr/local/apache/bin/apachectl star
Apache 安裝完畢
安裝PHP
安裝支持圖形處理,自己可以找最新的安裝。
##### zlib#####
cd zlib-1.2.3
./configure --prefix=/usr/local/zlib
make
make install
cd ..
##### FreeType ##### freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure --prefix=/usr/local/freetype
make
make install
cd ..
##### LibPNG #####
cd libpng-1.2.20
cp scripts/makefile.linux makefile
make test
make install
cd ..
##### Jpeg ##### jpegsrc.v6b.tar.gz
cd jpeg-6b
mkdir /usr/local/jpeg
mkdir /usr/local/jpeg/bin
mkdir /usr/local/jpeg/lib
mkdir /usr/local/jpeg/include
mkdir /usr/local/jpeg/man
mkdir /usr/local/jpeg/man/man1
./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
make
make install
cd ..
##### gd ##### gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd \
--with-jpeg=/usr/local/jpeg \
--with-freetype=/usr/local/freetype \
--with-png \
--with-zlib
[root@localhost local# tar -zxvf php-5.2.5.tar.gz
[root@localhost local# cd php-5.2.5
[root@localhost php-5.2.5]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-
mysql=/usr/local/mysql --with-config-file-path=/usr/local/php/etc --with-openssl=/usr/local/ssl --with-gd=/usr/local/gd --
with-gdbm=/usr/lib --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/jpeg --with-png-dir --with-
zlib=/usr/local/zlib --enable-mbstring --enable-sockets
[root@localhost php-5.2.5]# make;make install
[root@localhost php-5.2.5]# cp php.ini-dist /usr/local/php/etc/php.ini
[root@localhost php-5.2.5]# vi /usr/local/apache/conf/httpd.conf
按 I 鍵 添加 AddType application/x-tar .tgz
AddType application/x-httpd-php .php
AddType image/x-icon .ico
DirectoryIndex index.php index.html index.html.var
保存退出 :wq
[root@localhost php-5.2.5]# /usr/local/apache/bin/apachectl restart
Php安裝完畢
設置mysql
[root@localhost httpd-2.2.8]# /usr/local/mysql/bin/mysql -u root -pmysql
mysql> create database cactidb;
mysql> grant all on cactidb.* to root;
mysql> grant all on cactidb.* to root@localhost;
mysql> grant all on cactidb.* to cactiuser;
mysql> grant all on cactidb.* to cactiuser@localhost;
mysql> set password for cactiuser@localhost=password('cactipw');
註:以上語句輸出 Query OK, 0 rows affected (0.01 sec) 表示成功
mysql> exit
Mysql設置完畢
檢測apache + php + mysql
[root @tsai usr]# cd /www/htdocs
[root @tsai htdocs]# touch info.php
[root @tsai htdocs]# vi info.php
<?
phpinfo( );
?>
保存退出 :wq
[root @tsai htdocs]# touch mydqltest.html
[root @tsai htdocs]# vi mysqltest.html
<html>
<body>
<?
$link=mysql_connect('localhost','root');
mysql_select_db('mysql');
$str="select * from user;";
$result=mysql_query($str,$link);
$show=mysql_num_rows($result);
mysql_close($link);
for ($i=0;$i < $show;$i++)
{
$arr[$i]=mysql_fetch_array($result);
};
?>
<table align=center border=1>
<tr align=center>
<td>Host</td>
<td>User</td>
<td>Password</td>
</tr>
<?for ($i=0;$i<$show;$i++){?>
<tr>
<td><?echo $arr[$i][Host]?></td>
<td><?echo $arr[$i][User]?></td>
<td><?echo $arr[$i][Password]?></td>
</tr>
<?};?>
</body>
</html>
保存退出 :wq
重啟mysql + apache 服務
[root @localhost htdocs]# service mydql restart
[root @localhost htdocs]# service httpd restart
進入瀏覽器檢查
http://192.168.1.254/info.php 和 http://192.168.1.254/mysqltest.html
安裝rrdtool
[root@localhost usr]# tar zxvf rrdtool-1.0.50.tar.gz
[root@localhost usr]# cd rrdtool-1.0.50
[root@localhost rrdtool-1.0.50]# ./configure
[root@localhost rrdtool-1.0.50]# make && make install
我的是fedora 7,用下面的方法。
[root@localhost usr] yum install rrdtool
Rrdtool安裝完畢
安裝net-snmp、snmpwalk和snmpget命令
[root@localhost usr]# rpm -qa | grep net-snmp
net-snmp-5.0.9-2.30E.15
net-snmp-devel-5.0.9-2.30E.15
net-snmp-libs-5.0.9-2.30E.15
net-snmp-utils-5.0.9-2.30E.15
[root@localhost usr]# vi /etc/snmp/snmpd.conf
更改 1、com2sec notConfigUser default public
改為:com2sec notConfigUser 127.0.0.1 public
2、access notConfigGroup "" any noauth exact systemview none none
改為:access notConfigGroup "" any noauth exact all none none
3、#view all included .1 80
將前面的 # 注釋 去掉。
保存退出 :wq
[root@localhost usr]# service snmpd restart
使用yum安裝更方便:
[root@localhost usr]# yum install net-snmp
[root@localhost usr]# yum update net-snmp
配置還是使用上面的方法修改。
或者使用:net-snmp-5.1.4.tar.gz安裝
[root@localhost local]# tar -zxvf net-snmp-5.1.4.tar.gz
[root@localhost local]# cd net-snmp-5.1.4
[root@localhost local]# ./configure
[root@localhost local]# make
[root@localhost local]# make install
運行snmpconf -g basic_setup,會在當前目錄下生成一個snmpd.conf配置文件:
[root@localhost local]# snmpconf -g basic_setup
運行後會出現一個詢問菜單,按如下步驟進行回答:CODE:[Copy to clipboard]Do you want to configure the information returned in
the system MIB group (contact info, etc)? (default = y): y
The location of the system: Shenzhen, China
The contact information: [email protected]
Do you want to properly set the value of the sysServices.0 OID (if you don't know, just say no)? (default = y): y
does this host offer physical services (eg, like a repeater) [answer 0 or 1]: 1
does this host offer datalink/subnetwork services (eg, like a bridge): 0
does this host offer internet services (eg, supports IP): 1
does this host offer end-to-end services (eg, supports TCP): 1
does this host offer application services (eg, supports SMTP): 1
Do you want to configure the agent's access control? (default = y): y
Do you want to allow SNMPv3 read-write user based access (default = y): n
Do you want to allow SNMPv3 read-only user based access (default = y): n
Do you want to allow SNMPv1/v2c read-write community access (default = y): n
Do you want to allow SNMPv1/v2c read-only community access (default = y): y
The community name to add read-only access for: public
The hostname or network address to accept this community name from [RETURN for all]: (RETURN)
The OID that this community should be restricted to [RETURN for no-restriction]: (RETURN)
Do you want to configure where and if the agent will send traps? (default = y): n
Do you want to configure the agent's ability to monitor various aspects of your system? (default = y): y
Do you want to configure the agents ability to monitor processes? (default = y): y
Name of the process you want to check on: sshd(需要監控的進程)
Maximum number of processes named ' sshd' that should be running [default = 0]: 1
Minimum number of processes named ' sshd' that should be running [default = 0]: 0
Do another proc line? (default = y): n
Do you want to configure the agents ability to monitor disk space? (default = y): y
Enter the mount point for the disk partion to be checked on: /
Enter the minimum amount of space that should be available on /var: %100
Do another disk line? (default = y): y
Enter the mount point for the disk partion to be checked on: /var
Enter the minimum amount of space that should be available on /var: %100
Do another disk line? (default = y): y
Enter the mount point for the disk partion to be checked on: /usr
Enter the minimum amount of space that should be available on /usr: %100
Do another disk line? (default = y): y
Enter the mount point for the disk partion to be checked on: /home
Enter the minimum amount of space that should be available on /home: %100
Do another disk line? (default = y): n
Do you want to configure the agents ability to monitor load average? (default = y): y
Enter the maximum allowable value for the 1 minute load average: 12
Enter the maximum allowable value for the 5 minute load average: 12
Enter the maximum allowable value for the 15 minute load average: 12
Do another load line? (default = y): n
Do you want to configure the agents ability to monitor file sizes? (default = y): n(如果想監控文件的大小,可以選y)
4.運行net-snmp:
# snmpd -c /path/snmpd.conf (要上面生成的絕對路徑)
測試一下看看net-snmp是否配置成功:
#snmpwalk -v 1 -c public localhost .1 (是否可以從.1開始採集伺服器數據)
#snmpwalk -v 1 -c public localhost dskPercent.1 (看看剛配置過的硬碟監測是否成功)
如果有數據了,恭喜你snmp安裝成功了。
註:如果你機器內沒有snmpwalk和snmpge命令,請到安裝盤里查找 net-snmp-utils 包,rpm -ivh net-snmp-utils-*.rpm 只後這兩個命令就
在系統里了。其他包也都在安裝盤里 確保安裝這四個包就OK
安裝/ 配置cacti
[root@localhost usr]# useradd cactiuser -g users
[root@localhost usr]# passwd cactiuser (pwd:cactipw)
[root@localhost usr]# cp cacti-0.8.7.tar.gz /var/www/html
[root@localhost usr]# cd /var/www/html
[root@localhost html]# tar -zxvf cacti-0.8.7.tar.gz
[root@localhost html]# mv cacti-0.8.6g cacti
[root@localhost html]# cd cacti
[root@localhost cacti]# /usr/local/mysql/bin/mysql -u root -p cactidb < cacti.sql
passwork:
[root@localhost cacti]# chown -R cactiuser rra/ log/
[root@localhost cacti]# cd scripts
[root@localhost scripts]# chown cactiuser:users *
[root@localhost scripts]# vi /www/htdocs/cacti/include/config.php
$database_type = 「mysql」;
$database_default = 「cactidb」;
$database_hostname = 「localhost」;
$database_username = 「cactiuser」;
$database_password = 「cactipw」;
更改用戶、密碼 等項 與上面給出的對應 保存退出
[root@localhost scripts]# crontab -u cactiuser -e
加入
*/5 * * * * /usr/local/php/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1
保存退出:wq
全部設置完畢。
打開瀏覽器 http://192.168.1.254/cacti 進入cacti的初始設置頁面
第一次默認登陸賬號:admin 密碼 admin
登陸後在新改個密碼就OK
需要說明的還有路徑
snmpwalk Binary Path : /usr/bin/snmpwalk
snmpget Binary Path: /usr/bin/snmpget
RRDTool Binary Path: /usr/bin/rrdtool
PHP Binary Path: /usr/local/php/bin/php
Cacti Log File Path: /var/www/html/cacti/log/cacti.log
Cactid Poller File Path:/var/www/html/cacti/poller.php
如果你是按我的步驟做的 那上面的路徑一定不會錯。
註:此時graphs還不能顯示圖形,需要將服務重新啟動一下
[root@localhost scripts]# service snmpd restart
[root@localhost scripts]# service mysql restart
[root@localhost scripts]# service httpd restart
『柒』 CactiEZ如何監控oracle資料庫
建用戶和授權要用DBA
最簡單得建用戶:
create user 用戶名 identified by 密碼
用戶解鎖 alter user 用戶名 account unlock(不解鎖無法登陸)
授權用 grant
建完用戶首先要授權登陸許可權
grant create session to 用戶名
授權可以授權給角色和用戶
也可以把角色授權給角色和用戶
其他得類似 創建表得許可權類似如下格式:
grant create table to 用戶
『捌』 如何監控MySQL
首先介紹下 pt-stalk,它是 Percona-Toolkit 工具包中的一個工具,說起 PT 工具包大家都不陌生,平時常用的 pt-query-digest、 pt-online-schema-change 等工具都是出自於這個工具包,這里就不多介紹了。
pt-stalk 的主要功能是在出現問題時收集 OS 及 MySQL 的診斷信息,這其中包括:
1. OS 層面的 CPU、IO、內存、磁碟、網路等信息;
2. MySQL 層面的行鎖等待、會話連接、主從復制,狀態參數等信息。
而且 pt-stalk 是一個 Shell腳本,對於我這種看不懂 perl 的人來說比較友好,腳本裡面的監控邏輯與監控命令也可以拿來參考,用於構建自己的監控體系。
三、使用
接著我們來看下如何使用這個工具。
pt-stalk 通常以後台服務形式監控 MySQL 並等待觸發條件,當觸發條件時收集相關診斷數據。
觸發條件相關的參數有以下幾個:
function:
∘默認為 status,代表監控 SHOW GLOBAL STATUS 的輸出;
∘也可以設置為 processlist,代表監控 show processlist 的輸出;
variable:
∘默認為 Threads_running,代表 監控參數,根據上述監控輸出指定具體的監控項;
threshold:
∘默認為 25,代表 監控閾值,監控參數超過閾值,則滿足觸發條件;
∘監控參數的值非數字時,需要配合 match 參數一起使用,如 processlist 的 state 列;
cycles:
∘默認為 5,表示連續觀察到五次滿足觸發條件時,才觸發收集;
其他一些重要參數:
iterations:該參數指定 pt-stalk 在觸發收集幾次後退出,默認會一直運行。
run-time:觸發收集後,該參數指定收集多長時間的數據,默認 30 秒。
sleep:該參數指定在觸發收集後,sleep 多久後繼續監控,默認 300 秒。
interval:指定狀態參數的檢查頻率,判斷是否需要觸發收集,默認 1 秒。
dest:監控數據存放路徑,默認為 /var/lib/pt-stalk。
retention-time :監控數據保留時長,默認 30 天。
daemonize:以後台服務運行,默認不開啟。
log:後台運行日誌,默認為 /var/log/pt-stalk.log。
collect:觸發發生時收集診斷數據,默認開啟。
∘collect-gdb:收集 GDB 堆棧跟蹤,需要 gdb 工具。
∘collect-strace:收集跟蹤數據,需要 strace 工具。
∘collect-tcpmp:收集 tcpmp 數據,需要 tcpmp 工具。
連接參數:host、password、port、socket。
『玖』 安裝cacti被監控主機始終處於Unknown狀態;
#mysql -u root -p
Password:
# mysql>create database cacti;
# mysql>grant all on cacti.* to cacti@localhost identified by 『cacti』;
修改cacti使之可以訪問資料庫
#vim /usr/local/cacti/include/config.php
# $database_type = "mysql";
#$database_default = "cacti";
#$database_hostname = "localhost";
#$database_username = "cacti";
#$database_password = "cacti";
#$database_port = "3306";
導入資料庫文件
#mysql -u root -p cacti < cacti.sql
『拾』 找一個智能硬體,能監控到我軟體伺服器數值的設備
你好
網路和系統監控是一個很寬的范疇。有監控伺服器、網路設備、應用正常工作的方案,也有跟蹤這些系統和設備性能,提供趨勢性能分析的解決方案。有些工具像個鬧鍾一樣,當發現問題的時候就會報警,而另外的一些工具甚至可以在警報響起的時候觸發一些動作。這里,收集了一些開源的工具,旨在解決上述的一些甚至大部分問題。
Cacti
Cacti是一個性能廣泛的圖表和趨勢分析工具,可以用來跟蹤並幾乎可以繪制出任何可監測指標,描繪出圖表。從硬碟的利用率到風扇的轉速,在一個電腦管理系統中,只要是可以被監測的指標,Cacti都可以監測,並快速的轉換成可視化的圖表。
滿意請採納