MySQL過濾相同binlog_通過Linux命令過濾出binlog中完整的SQL語句

DB:MySQL 5.6.16

CentOS:CentOS release 6.3 (Final)

當insert語句通過空格跨行輸入的時候,如何提取完整的insert語句!

創建一個空表:

mysql> create table yoon as select * from sakila.actor where 1=0;

Query OK, 0 rows affected (0.06 sec)

Records: 0? Duplicates: 0? Warnings: 0

查看表名:

mysql> show tables;

+----------------+

| Tables_in_yoon |

+----------------+

| yoon? ? ? ? ? |

+----------------+

1 row in set (0.00 sec)

查看數據:

mysql> select * from yoon;

Empty set (0.00 sec)

查看表結構:

mysql> desc yoon;

+-------------+----------------------+------+-----+-------------------+-----------------------------+

| Field? ? ? | Type? ? ? ? ? ? ? ? | Null | Key | Default? ? ? ? ? | Extra? ? ? ? ? ? ? ? ? ? ? |

+-------------+----------------------+------+-----+-------------------+-----------------------------+

| actor_id? ? | smallint(8) unsigned | NO? |? ? | 0? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? |

| first_name? | varchar(45)? ? ? ? ? | NO? |? ? | NULL? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? |

| last_name? | varchar(45)? ? ? ? ? | NO? |? ? | NULL? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? |

| last_update | timestamp? ? ? ? ? ? | NO? |? ? | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |

+-------------+----------------------+------+-----+-------------------+-----------------------------+

4 rows in set (0.00 sec)

夸行方式插入測試數據:

mysql> insert into yoon

->

-> values

->

-> (1,'YOON','HANK',2006-02-15 04:34:33)

->

-> ;

查看mysql-binlog日志:

[root@hank-yoon data]# ls

auto.cnf? ? ? ? ? ? hank? ? ? ibdata1? ib_logfile0? ib_logfile2? mysql-bin.000043? mysql-bin.000045? performance_schema? test? yoon.sql

binlog-rollback.pl? hank.sql? ibdata2? ib_logfile1? mysql? ? ? ? mysql-bin.000044? mysql-bin.index? sakila? ? ? ? ? ? ? yoon

將binlog數據轉換到yoon.sql:

[root@hank-yoon data]# mysqlbinlog mysql-bin.000045 > yoon.sql

過濾出insert語句:

[root@hank-yoon data]# more yoon.sql | grep --ignore-case -E 'insert' -A2 -B2 | grep yoon > hank.sql

查看insert語句,發現跨行插入的SQL語句截至到insert into yoon就結束:

[root@hank-yoon data]# cat hank.sql

insert into yoon (first_name,last_name) select first_name,last_name from hank

insert into yoon

通過以下命令,可以查看完整的SQL語句,即使是跨行插入,分好(;)都給你帶上:

[root@hank-yoon data]# sed? -n? "/insert into yoon/,/;/p"? yoon.sql? |sed? 's#\/\*!\*\/##'

insert into yoon (first_name,last_name) select first_name,last_name from hank

;

insert into yoon

values

(1,'YOON','HANK','2006-02-15 04:34:33')

;

0b1331709591d260c1c78e86d0c51c18.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/258191.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/258191.shtml
英文地址,請注明出處:http://en.pswp.cn/news/258191.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

iOS 獲取當前月份的天數(轉)

在這里我很鄙視百度,尼瑪 竟然每一個我想要的結果。。。最后還是用google弄到的。日前又需要自己以后慢慢研究1. 獲取當前月份有多少天NSCalendar *calendar [NSCalendarcurrentCalendar]; NSRange range [calendarrangeOfUnit:NSDayCalendarUnitinUnit:NSMonthCa…

Dojo中跨域獲取新浪股票接口返回的數據(練習)

首先,配置好環境,不羅嗦了,然后,使用request中的script模塊中的方法,獲取代碼地址為http://hq.sinajs.cn/listsh000001,核心代碼如下: 1 on(dom.byId("clickToShowCode")…

Palo Alto Networks全球化安全堡壘理念 提升企業防御能力

IT領域技術發展日新月異,“軟件服務”的產品模式成功取代硬件成為人們熱議的話題,身處轉變中的安全行業也受到了巨大的影響。面對國內外網絡安全事件頻發,病毒攻擊日益復雜、多元化的現狀,老牌安全廠商是如何應對的呢? 近日&…

●SQL編程

局部變量局部變量必須以 開頭,而且必須先用DECLARE 命令說明后才可使用。使用SELECT 或SET 命令來設定變量的值。說明形式:DECLARE 變量名 變量類型 [ 變量名 變量類型]SELECT 局部變量 變量值SET 局部變量 變量值例:declare name varchar(2…

hdu 1427 速算24點

題目連接 http://acm.hdu.edu.cn/showproblem.php?pid1427 速算24點 Description 速算24點相信絕大多數人都玩過。就是隨機給你四張牌,包括A(1),2,3,4,5,6,7,8,9,10,J(11),Q(12),K(13)。要求只用,-,*,/運算符以及括號改變運算順序,使得最終運算結果為2…

《云計算:概念、技術與架構》一1.1 本書目標

本節書摘來華章計算機《云計算:概念、技術與架構》一書中的第1章 ,第1.1節,(美)Thomas Erl   (英)Zaigham Mahmood 著 (巴西)Ricardo Puttini 龔奕利 賀 蓮 胡 創 …

mysql to char 用法_postgresql 中的to_char()常用操作

postgresql中的to_char()用法和Oracle相比,多了一個參數。to_char(待轉換值,轉換格式);常用轉換格式有2種:一個是寫若干個0,如果待轉換的值位數少于于你定義的轉換格式位數,輸出值會自動在左邊補0,位數補齊…

面試題40:數組中只出現一次的數字

題目描述 一個整型數組里除了兩個數字之外,其他的數字都出現了兩次。請寫程序找出這兩個只出現一次的數字。要求時間復雜度是O(n),空間復雜度是O(1)。 題目分析 劍指Offer(紀念版)P211 ① 自己與自己異或為0 ② 0與數A異或為A ③ …

Python3 From Zero——{最初的意識:007~函數}

一、編寫可接受任意數量參數的函數:*、** >>> def test(x, *args, y, **kwargs): ... pass ... >>> test(1, 2, 3, 4 ,5 ,5, y9, aa99, bb88,cc900) >>> test(1, 2, 3, 4 ,5 ,5, 9, aa99, bb88,cc900) Traceback (most recent call la…

mysql 數據庫名稱限制_mysql 數據庫名稱限制

mysql 數據庫名稱限制云服務器(Elastic Compute Service,簡稱ECS)是阿里云提供的性能卓越、穩定可靠、彈性擴展的IaaS(Infrastructure as a Service)級別云計算服務。云服務器ECS免去了您采購IT硬件的前期準備,讓您像使用水、電、天然氣等公共資源一樣便…

視頻圖像不正常的幾個表現及解決方法

1、 圖像發白的原因? 1、檢查是否鏡頭圈調行過大而導致圖像發白; 2、在檢查攝像機后有一自動光圈亮度輔助調整電位器,是否因電位器調得過大; 3、檢查監視器亮度,對比度是否調得過大或故障. 2、 圖像質量不好的原因? 檢查鏡頭是否有指紋或太臟。檢查光圈…

redis watch multi exec 關系

EXEC 執行所有事務塊內的命令。 假如某個(或某些) key 正處于 WATCH 命令的監視之下,且事務塊中有和這個(或這些) key 相關的命令,那么EXEC 命令只在這個(或這些) key 沒有被其他命令所改動的情況下執行并生效,否則該事務被打斷(abort)。 返回…

Chrome 控制臺指南

轉自:http://blog.jobbole.com/76985/ Chrome的開發者工具已經強大到沒朋友的地步了,特別是其功能豐富界面友好的console,使用得當可以有如下功效: 更高「逼格」更快「開發調試」更強「進階級的Frontender」Bug無處遁形「Console大…

專家:大數據等新技術助力信息融合

ACCA中國區政策主管錢毓益本周末在出席由上海國家會計學院主辦的“管理會計:融合與創新”論壇時表示:新一輪以移動互聯網、物聯網和云計算及大數據為代表的信息技術,將融合與創新發展表現得淋漓盡致。 錢毓益指出,通過數字化轉型與…

python數據類型匯總_python基礎數據類型匯總

#!/usr/bin/env python# -*- encoding:utf-8 -*-# author:Administrator# make_time:2018/6/9‘‘‘數據類型:不可變數據類型:int、str、bool、tuple、frozenset可變數據類型:list、dict、set公共方法:count()、len()、del、copy(…

開發實戰細節之——關于整型轉換為字符串類型的性能與實現分析

細節決定成敗,開發中往往從一些細節就可以看出一個程序員的開發水準,下面我就給大家分享一下開發中最最常見的int轉換為String類型的方法及其性能解析。 一般大家最常用的方法有 方法一:String s1 String.valueOf(i); 方法二:St…

華為服務器故障燈不開機_華為服務器日常維護及故障處理介紹V.ppt

通電策略 power on上電自動開機。 power off上電不自動開機,需按前面板電源按鈕才能開機。 Last State上電開機與否取決于上次斷電之前的狀態,如果是關機狀態則通電后不能自動開機,如果是開機狀態則通電后可以自動開機。 硬件狗 BMC WDT Acti…

《黑客大曝光:移動應用安全揭秘及防護措施》一2.2 攻擊與對策

本節書摘來自華章出版社《黑客大曝光:移動應用安全揭秘及防護措施》一書中的第2章,第2.2節,作者 (美)Neil Bergman ,更多章節內容可以訪問云棲社區“華章計算機”公眾號查看 2.2 攻擊與對策 好&#xff0c…

Android 4.2 通知通過PendingIntent啟動Activity失敗的問題

今天突然發現在Android 4.2手機上點擊通知消息無法打開Activity的問題,具體Logcat信息如下: 01-09 11:37:43.733: WARN/ActivityManager(92): Unable to send startActivity intent java.lang.SecurityException: Permission Denial: starting Intent { …

ubuntu安裝sublime

添加sublime text 3的倉庫: sudo add-apt-repository ppa:webupd8team/sublime-text-3 更新軟件庫 sudo apt-get update 安裝Sublime Text 3: sudo apt-get install sublime-text-installer 安裝sublime2: sudo add-apt-repository ppa:webupd8team/sublime-text-2 …