亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Mysql Binlog快速遍歷搜索記錄及binlog數(shù)據(jù)查看的方法

 更新時(shí)間:2016年01月29日 10:07:03   作者:黃杉  
這篇文章主要介紹了Mysql Binlog快速遍歷搜索記錄及binlog數(shù)據(jù)查看的方法的相關(guān)資料,需要的朋友可以參考下

目標(biāo),開發(fā)人員說(shuō)有個(gè)數(shù)據(jù)莫名其妙添加了,但是不知道是從哪里添加的,而且應(yīng)用功能里面不應(yīng)該添加這樣的數(shù)據(jù),為了查清楚來(lái)源,所以我就準(zhǔn)備去binlog里面找了,但是binlog有好幾個(gè)月的數(shù),我這樣一個(gè)個(gè)mysqlbinlog下去,也不是辦法,所以想到準(zhǔn)備用腳本循環(huán)來(lái)操作。

1,去binlog目錄復(fù)制所有的binlog到臨時(shí)目錄/tmp/bl/

cp /home/data/mysql/binlog/mysql-bin.* /tmp/bl

2,寫腳本遍歷

[root@wgq_idc_dbm_3_61 tmp]# vim find_guolichao.sh 
#!/bin/bash
進(jìn)入臨時(shí)目錄
cd /tmp/bl
# 開始循環(huán)遍歷目錄
for path in `ls . |grep mysql-bin.0`
do
#記錄一些基礎(chǔ)信息,比如當(dāng)前遍歷的mysqlbinlog日志
echo "" >> z_grep.log
echo "begin ..."
echo $path >> z_grep.log
# 需要搜索出AD_ADVERTISEMENT表的AD_LINK字段的值為ad_init_user的記錄,記錄到總?cè)罩緕_grep.log
/usr/local/mysql/bin/mysqlbinlog --base64-output=DECODE-ROWS -v |grep AD_ADVERTISEMENT |grep AD_LINK |grep ad_init_user >> z_grep.log
#記錄搜索結(jié)果到單獨(dú)的日志里面,單獨(dú)是因?yàn)槿绻厦娲螖?shù)太多的話,一條條去看也不知道是否搜索到,先看z_grep_single.log如果有記錄,再去z_grep.log里面檢索下在哪個(gè)mysqlbinlog里面就可以了。
/usr/local/mysql/bin/mysqlbinlog --base64-output=DECODE-ROWS -v |grep AD_ADVERTISEMENT |grep AD_LINK |grep ad_init_user >> z_grep_single.log
echo "end." >>z_grep.log
done

3,執(zhí)行搜索腳本,查看結(jié)果

[root@wgq_idc_dbm_3_61 tmp]# bash -x find_guolichao.sh 
[root@wgq_idc_dbm_3_61 tmp]# ll ./bl/z_grep*
-rw-r--r--. 1 root root 33534 1月 27 15:59 ./bl/z_grep.log
-rw-r--r--. 1 root root 0 1月 27 15:59 ./bl/z_grep_single.log
[root@wgq_idc_dbm_3_61 tmp]# 

看./bl/z_grep_single.log大小為0,顯然,在當(dāng)前的2個(gè)月binlog日志里面,沒(méi)有記錄到這個(gè)值。應(yīng)該是2個(gè)月之前錄入的數(shù)據(jù),這樣只能去歷史備份記錄的備份記錄去查找了

MySQL的binlog數(shù)據(jù)如何查看

binlog介紹

binlog,即二進(jìn)制日志,它記錄了數(shù)據(jù)庫(kù)上的所有改變.

改變數(shù)據(jù)庫(kù)的SQL語(yǔ)句執(zhí)行結(jié)束時(shí),將在binlog的末尾寫入一條記錄,同時(shí)通知語(yǔ)句解析器,語(yǔ)句執(zhí)行完畢.

binlog格式

基于語(yǔ)句,無(wú)法保證所有語(yǔ)句都在從庫(kù)執(zhí)行成功,比如update ... limit 1;

基于行,將每一次改動(dòng)記為binlog中的一行.在執(zhí)行一個(gè)特別復(fù)雜的update或者delete操作時(shí),基于行的格式會(huì)有優(yōu)勢(shì).

登錄到mysql查看binlog

只查看第一個(gè)binlog文件的內(nèi)容

show binlog events;

查看指定binlog文件的內(nèi)容

show binlog events in 'mysql-bin.000002';

查看當(dāng)前正在寫入的binlog文件

show master status\G

獲取binlog文件列表

show binary logs;

用mysqlbinlog工具查看

注意:

不要查看當(dāng)前正在寫入的binlog文件

不要加--force參數(shù)強(qiáng)制訪問(wèn)

如果binlog格式是行模式的,請(qǐng)加 -vv參數(shù)

本地查看

基于開始/結(jié)束時(shí)間

mysqlbinlog --start-datetime='2013-09-10 00:00:00' --stop-datetime='2013-09-10 01:01:01' -d 庫(kù)名 二進(jìn)制文件

基于pos值

mysqlbinlog --start-postion=107 --stop-position=1000 -d 庫(kù)名 二進(jìn)制文件

遠(yuǎn)程查看

指定開始/結(jié)束時(shí)間,并把結(jié)果重定向到本地t.binlog文件中.

mysqlbinlog -u username -p password -hl-db1.dba.beta.cn6.qunar.com -P3306 \
--read-from-remote-server --start-datetime='2013-09-10 23:00:00' --stop-datetime='2013-09-10 23:30:00' mysql-bin.000001 > t.binlog

相關(guān)文章

最新評(píng)論