1、打開數(shù)據(jù)庫配置文件my.ini (一般在數(shù)據(jù)庫安裝目錄)(D:\MYSQL)
成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,成都做網(wǎng)站公司-創(chuàng)新互聯(lián)公司已向成百上千家企業(yè)提供了,網(wǎng)站設(shè)計(jì),網(wǎng)站制作,網(wǎng)絡(luò)營銷等服務(wù)!設(shè)計(jì)與技術(shù)結(jié)合,多年網(wǎng)站推廣經(jīng)驗(yàn),合理的價(jià)格為您打造企業(yè)品質(zhì)網(wǎng)站。
2、在數(shù)據(jù)庫的最后一行添加
log=log.txt
代碼
3、重啟mysql數(shù)據(jù)庫
4、去數(shù)據(jù)庫數(shù)據(jù)目錄 我的是(D:\MYSQL\data) 你會發(fā)現(xiàn)多了一個(gè)log.txt文件
我的是在C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\data
測試:
1、對數(shù)據(jù)庫操作
2、查看log.txt文件內(nèi)容 如果發(fā)現(xiàn)有變化說明你就可以監(jiān)控到mysql數(shù)據(jù)庫的變化
數(shù)據(jù)庫的查詢 刪除 更新 插入都可以查到
希望本篇文章可以幫助大家更快的二次開發(fā) ^_^
日志文件類型概述:
1.
錯誤日志 記錄啟動、運(yùn)行或停止mysqld時(shí)出現(xiàn)的問題。
My.ini配置信息:
#Enter a name for the error log file. Otherwise a default name will be used.
#log-error=d:/mysql_log_err.txt
一,獲取mysql用戶下的進(jìn)程總數(shù)
ps -ef | awk '{print $1}' | grep "mysql" | grep -v "grep" | wc-1
二,主機(jī)性能狀態(tài)
# uptime
[root@ ~]# uptime
13:05:52 up 53 days, 52 min, 1 user, load average: 0.00, 0.00, 0.00
三,CPU使用率
# top
或
# vmstat
四,磁盤IO量
# vmstat 或 # iostat
五,swap進(jìn)出量[內(nèi)存]
# free
六,數(shù)據(jù)庫性能狀態(tài)
(1)QPS(每秒Query量)
QPS = Questions(or Queries) / seconds
mysql show /*50000 global */ status like 'Question';
(2)TPS(每秒事務(wù)量)
TPS = (Com_commit + Com_rollback) / seconds
mysql show status like 'Com_commit';
mysql show status like 'Com_rollback';
(3)key Buffer 命中率
key_buffer_read_hits = (1-key_reads / key_read_requests) * 100%
key_buffer_write_hits = (1-key_writes / key_write_requests) * 100%
mysql show status like 'Key%';
(4)InnoDB Buffer命中率
innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100%
mysql show status like 'innodb_buffer_pool_read%';
(5)Query Cache命中率
Query_cache_hits = (Qcahce_hits / (Qcache_hits + Qcache_inserts )) * 100%;
mysql show status like 'Qcache%';
(6)Table Cache狀態(tài)量
mysql show status like 'open%';
(7)Thread Cache 命中率
Thread_cache_hits = (1 - Threads_created / connections ) * 100%
mysql show status like 'Thread%';
mysql show status like 'Connections';
(8)鎖定狀態(tài)
mysql show status like '%lock%';
(9)復(fù)制延時(shí)量
mysql show slave status
(10) Tmp Table 狀況(臨時(shí)表狀況)
mysql show status like 'Create_tmp%';
(11) Binlog Cache 使用狀況
mysql show status like 'Binlog_cache%';
(12) Innodb_log_waits 量
mysql show status like 'innodb_log_waits';
當(dāng)然你也可以使用一下開源監(jiān)控軟件進(jìn)行監(jiān)控
一,RRDTool
二,Nagios
三,MRTG
四,Cacti
首先介紹下 pt-stalk,它是 Percona-Toolkit 工具包中的一個(gè)工具,說起 PT 工具包大家都不陌生,平時(shí)常用的 pt-query-digest、 pt-online-schema-change 等工具都是出自于這個(gè)工具包,這里就不多介紹了。
pt-stalk 的主要功能是在出現(xiàn)問題時(shí)收集 OS 及 MySQL 的診斷信息,這其中包括:
1. OS 層面的 CPU、IO、內(nèi)存、磁盤、網(wǎng)絡(luò)等信息;
2. MySQL 層面的行鎖等待、會話連接、主從復(fù)制,狀態(tài)參數(shù)等信息。
而且 pt-stalk 是一個(gè) Shell腳本,對于我這種看不懂 perl 的人來說比較友好,腳本里面的監(jiān)控邏輯與監(jiān)控命令也可以拿來參考,用于構(gòu)建自己的監(jiān)控體系。
三、使用
接著我們來看下如何使用這個(gè)工具。
pt-stalk 通常以后臺服務(wù)形式監(jiān)控 MySQL 并等待觸發(fā)條件,當(dāng)觸發(fā)條件時(shí)收集相關(guān)診斷數(shù)據(jù)。
觸發(fā)條件相關(guān)的參數(shù)有以下幾個(gè):
function:
°?默認(rèn)為 status,代表監(jiān)控 SHOW GLOBAL STATUS 的輸出;
°?也可以設(shè)置為 processlist,代表監(jiān)控 show processlist 的輸出;
variable:
°?默認(rèn)為 Threads_running,代表 監(jiān)控參數(shù),根據(jù)上述監(jiān)控輸出指定具體的監(jiān)控項(xiàng);
threshold:
°?默認(rèn)為 25,代表 監(jiān)控閾值,監(jiān)控參數(shù)超過閾值,則滿足觸發(fā)條件;
°?監(jiān)控參數(shù)的值非數(shù)字時(shí),需要配合 match 參數(shù)一起使用,如 processlist 的 state 列;
cycles:
°?默認(rèn)為 5,表示連續(xù)觀察到五次滿足觸發(fā)條件時(shí),才觸發(fā)收集;
連接參數(shù):host、password、port、socket。
其他一些重要參數(shù):
iterations:該參數(shù)指定 pt-stalk 在觸發(fā)收集幾次后退出,默認(rèn)會一直運(yùn)行。
run-time:觸發(fā)收集后,該參數(shù)指定收集多長時(shí)間的數(shù)據(jù),默認(rèn) 30 秒。
sleep:該參數(shù)指定在觸發(fā)收集后,sleep 多久后繼續(xù)監(jiān)控,默認(rèn) 300 秒。
interval:指定狀態(tài)參數(shù)的檢查頻率,判斷是否需要觸發(fā)收集,默認(rèn) 1 秒。
dest:監(jiān)控?cái)?shù)據(jù)存放路徑,默認(rèn)為 /var/lib/pt-stalk。
retention-time :監(jiān)控?cái)?shù)據(jù)保留時(shí)長,默認(rèn) 30 天。
daemonize:以后臺服務(wù)運(yùn)行,默認(rèn)不開啟。
log:后臺運(yùn)行日志,默認(rèn)為 /var/log/pt-stalk.log。
collect:觸發(fā)發(fā)生時(shí)收集診斷數(shù)據(jù),默認(rèn)開啟。
°?collect-gdb:收集 GDB 堆棧跟蹤,需要 gdb 工具。
°?collect-strace:收集跟蹤數(shù)據(jù),需要 strace 工具。
°?collect-tcpdump:收集 tcpdump 數(shù)據(jù),需要 tcpdump 工具。