对go-mysql-elasticsearch的二次开发
原包链接:https://github.com/siddontang/go-mysql-elasticsearch
本包是对 go-mysql-elasticsearch
的二次开发
主要支持:
binlog
事件可按nsq topic
拆分成多条进行投递 mysqldump
的binlog
(历史)进行过滤,从而写入nsq
的binlog
只是关心的事件建立表:
CREATE TABLE nsq_topic
(
id
int(11) NOT NULL AUTO_INCREMENT COMMENT ‘ID’,
db_name
varchar(30) NOT NULL COMMENT ‘数据库名’,
db_table
varchar(30) NOT NULL COMMENT ‘表名’,
business
varchar(30) NOT NULL COMMENT ‘业务名’,
status
tinyint(1) NOT NULL DEFAULT 1 COMMENT ‘是否可用:0-不可用; 1-可用’,
create_time
datetime NOT NULL COMMENT ‘创建时间’,
update_time
datetime COMMENT ‘更新时间’,
delete_time
datetime COMMENT ‘删除时间’,
PRIMARY KEY (id
),
INDEX idx_business
(business
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT=’NSQ Topic映射表’;
修改github.com/siddontang/go-mysql/canal/rows.go
修改github.com/siddontang/go-mysql/canal/dump.go
修改github.com/siddontang/go-mysql/canal/sync.go
./bin/go-mysql-elasticsearch -config=./etc/river.toml
.