整理小记--maxwell详解

  • 建maxwell库表,存储捕获到的schema等信息:
bootstrap --用于数据初始化
	--,在bootstrap表中插入需要全量刷新的数据库名称
	--表名,条件,maxwell将会读取符合条件的数据
		insert into maxwell.bootstrap (database_name, table_name) values ('fooDB', 'barTable');
	--或 使用命令行 
		bin/maxwell-bootstrap --database fooDB --table barTable --where "my_date >= '2017-01-07 00:00:00'"

schemas--记录所有的binlog文件信息;

databases--记录了所有的数据库信息;

tables--记录了所有的表信息;

columns--记录了所有的字段信息;

positions--记录了读取binlog的位移信息;

heartbeats--记录了心跳信息;

  • Timestamp 时间问题,总是作为UTC处理,将会少8小时需要修改maxwell源码或在后面处理
源码修改: 
# 1. 找到类
    com.zendesk.maxwell.schema.columndef.ColumnDef
    
# 2.找到 ColumnDef build() 方法中的 timestamp,注释掉DateTimeColumnDef,重写方法
# 原:
case "datetime":
case "timestamp":
	return new DateTimeColumnDef(name, type, pos, columnLength);
# 修改:
case "datetime":
    return new DateTimeColumnDef(name, type, pos, columnLength);
case "timestamp":
//自己按照DateTimeColumnDef 重写下 就欧克了
    return new TimeStampColumnDef(name, type, pos, columnLength);

你可能感兴趣的:(Maxwell)