使用Canal实现MySQL的数据实时同步
Posted qq6137759ab5162
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Canal实现MySQL的数据实时同步相关的知识,希望对你有一定的参考价值。
第一步:开启mysql的binlog日志
(1)修改/etc/my.cnf
,在里面添加如下内容
log-bin=/var/lib/mysql/mysql-bin 【binlog 日志存放路径】
binlog-format=ROW 【日志中会记录成每⼀一⾏行行数据被修改的形式】
server_id=1 【指定当前机器的服务 ID(如果是集群,不能重复)】
(2)配置完毕之后,登陆MySQL,输入如下命令:
show variables like \'%log_bin%\';
(3)配置目标mysql上的canal用户
mysql -uroot -p
CREATE USER canal IDENTIFIED BY \'canal\';
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO \'canal\'@\'%\';
FLUSH PRIVILEGES;
(4)重启目标mysql服务
第二步:安装canal
1.安装canal
https://github.com/alibaba/canal/releases
2.解压安装包tar -zxvf canal.deployer-1.1.5-SNAPSHOT.tar.gz
3.修改配置文件conf/example/instance.properties
(主要修改自己的数据配置相关信息)
4.启动bin/startup.sh
5.查看进程ps -ef | grep canal
6.查看日志cat logs/canal/canal.log
7.关闭 bin/stop.sh
java代码实现链接
以上是关于使用Canal实现MySQL的数据实时同步的主要内容,如果未能解决你的问题,请参考以下文章
实战 | canal 实现Mysql到Elasticsearch实时增量同步
基于Canal和Kafka实现MySQL的Binlog近实时同步
ElasticSearch实战(四十七)-Canal 实现 MySQL 数据实时同步方案
ElasticSearch实战(四十七)-Canal 实现 MySQL 数据实时同步方案