mysql binlog抽取某个表的数据

1.先把binlog文件转化为sql

sudo mysqlbinlog /var/mysql/var/mysql-bin.000057 --base64-output=decode-rows -v  > /var/mydiag.sql

2.抽取某一个表的数据

grep -B0 -A27 -w ‘DELETE FROM `kdb`.`t_diag_reportinfo`‘ mydiag.sql >diagreportinfo.sql 

其中 -B0 -A27为查询到的行的前面多少行,后面多少行,根据实际情况改变数字。我要查询的是删除记录,所以这里的关键词用了删除的语句

原文地址:https://www.cnblogs.com/zsxneil/p/9959887.html

时间: 2024-10-09 22:20:19

mysql binlog抽取某个表的数据的相关文章

MySql中把一个表的数据插入到另一个表中的实现代码--转

MySql中把一个表的数据插入到另一个表中的实现代码 司的一个项目,做报表--要关联的表结构比较多,最后决定把要用的数据集合到一张新表中,需要用到以下的sql语法......分享下: web开发中,我们经常需要将一个表的数据插入到另外一个表,有时还需要指定导入字段,设置只需要导入目标表中不存在的记录,虽然这些都可以在程序中拆分成简单sql来实现,但是用一个sql的话,会节省大量代码.下面我以mysql数据库为例分情况一一说明: 1.如果2张表的字段一致,并且希望插入全部数据,可以用这种方法: ?

mysql中把一个表的数据批量导入另一个表中(不同情况)

mysql中把一个表的数据批量导入另一个表中 不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL某个表的数据批量导入到另一个表的情况,甚至有时还需要指定导入字段. 本文就将以MySQL数据库为例,介绍如何通过SQL命令行将某个表的所有数据或指定字段的数据,导入到目标表 中. 类别一. 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:(此方法只适合导出两表在同一database) INSERT INTO 目标表 SELECT * FROM 来源表;

Mysql bin-log日志配置与恢复数据

1:在使用日志之前先确认日志是否已经开启了,登录mysql客户端,mysql -uroot -p123456(如果是源码安装且没有把mysql bin的路径加入到环境变量中,可以输入 /usr/local/mysql/bin/mysql -uroot -p123456 或 在家目录配置.bash_profile文件把/usr/local/mysql/bin一次性加到环境变量中),输入:shou variables like "%bin%",查看log_bin 的值是不是ON. 2:配置

如何查询mysql数据库中哪些表的数据量最大

1.mysql的information_schema下有存储数据库基本信息的数据字典表,可以通过查询tables表来获得 所需要的表相关信息.  mysql> show databases; 2. use  information_schema; 3. show tables; 4. desc tables; 5 select table_name,table_rows from  tables order by table_rows desc limi 10;

mysql -2查询单个表的数据时添加各种条件

首先创建一个表格 CREATE TABLE classmate( id INT, cname VARCHAR(5), age INT, math DOUBLE, english DOUBLE, nature DOUBLE ); 再给表中填入数据 INSERT INTO classmate VALUES(1,'王三',12,34,55,12); INSERT INTO classmate VALUES(2,'李四',15,67,45,15); INSERT INTO classmate VALUE

MySQL:统计两表重复数据出现次数

统计重复数据出现次数 SELECT * FROM ( SELECT * FROM ( SELECT count(t1.compare_id) AS c1,t1.*  FROM t1  LEFT JOIN t3 ON t1.compare_id=t3.compare_id  WHERE t1.compare_id=t3.compare_id  GROUP BY t1.compare_id ) t ) a1 LEFT JOIN ( SELECT * FROM ( SELECT count(t2.co

MYSQL把一张表的数据批量复制到另外一张表

1. 表结构完全一样 insert into 表1 select * from 表22. 表结构不一样(这种情况下得指定列名) insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 from 表2 3.不同数据库,需要在表前面加数据库前缀,database.表名. 注意:以上测试过OK,sql语句不需要在insert后面加values. 原文地址:https://www.cnblogs.com/anly95/p/9633162.html

mysql建库建表插入数据

#!/bin/bash user="root" password="123456" mycmd="mysql -u$user -p$password" for dbname in tec stu do $mycmd -e "create database $dbname;" $mycmd -e "use $dbname;create table test(id int,name varchar(18));insert

MYSQL 解锁与锁表

解锁 第一种 show processlist; 找到锁进程,kill id ; 第二种 mysql>UNLOCK TABLES; 锁表 锁定数据表,避免在备份过程中,表被更新 mysql>LOCK TABLES tbl_name READ; 为表增加一个写锁定: mysql>LOCK TABLES tbl_name WRITE;