加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

canal如何达成mysql的数据同步

发布时间:2022-02-22 14:25:59 所属栏目:MySql教程 来源:互联网
导读:这篇文章将为大家详细讲解有关canal如何实现mysql的数据同步,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 canal是什么? canal [knl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数
       这篇文章将为大家详细讲解有关canal如何实现mysql的数据同步,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
canal是什么?
       canal [kə'næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费
 
数据库镜像
数据库实时备份
索引构建和实时维护(拆分异构索引、倒排索引等)
业务 cache 刷新
带业务逻辑的增量数据处理
当前的 canal 支持源端 MySQL 版本包括 5.1.x , 5.5.x , 5.6.x , 5.7.x , 8.0.x
 
       基于上面的讲解,我们在实现canal之前,先简单做一个主从复制。一主 一从
首先下载mysql 镜像,并启动
docker pull mysql:latest
docker run -itd --name mysql-1 -p 23306:3306 -e MYSQL_ROOT_PASSWORD=root  mysql
docker run -itd --name mysql-2 -p 23307:3306 -e MYSQL_ROOT_PASSWORD=root  mysql复制代码
相关命令再解释一下:
name xxx  :xxx为容器名 p 111:222  其中111是宿主机端口,222是容器端口 MYSQL_ROOT_PASSWORD=root  设置root账户密码为rootcanal如何实现mysql的数据同步
 
进入容器测试一下,一切正常
 
设置 mysql-1为主,mysql-2为从库
修改一下 mysql的配置,安装vim编辑器
apt-get update
apt-get install vim复制代码
在主库 创建一个mysql账户给从库使用
CREATE USER 'slave'@'%' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON . TO 'slave'@'%';
FLUSH PRIVILEGES;复制代码
canal如何达成mysql的数据同步

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读