docker-compose安装和启动Canal
开启mysql的binlog日志支持
- 创建canal数据库用户
- 修改mysql配置文件my.cnf加入如下信息
[mysqld]
log-bin=mysql-bin
binlog-format=ROW
server_id=1
- 查看binlog日志是否开启
#查看是否打开binlog
show variables like 'log_bin';
#查看binlog日志列表
show master status;
#查看当前正在写入的binlog文件
show master status;
- 添加canal的mysql账号
mysql -uroot -proot
#创建账号(账号:canal;密码:canal)
CREATE USER canal IDENTIFIED BY 'canal';
#授予权限
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
#刷新并应用权限
FLUSH PRIVILEGES;
如果为mysql8则用下面方法添加
mysql -uroot -proot
#创建账号(账号:canal;密码:canal)
CREATE USER 'canal'@'%' IDENTIFIED BY 'canal';
#因为mysql8不支持GRANT创建用户,改用CREATE USER,然后再使用GRANT。
CREATE USER 'canal'@'%' IDENTIFIED BY 'canal';
GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' WITH GRANT OPTION;
#因为mysql8修改了加密规则, 低版本的mysql界面工具可能连不上mysql8, 需要更改加密规则。
# 2. 修改加密规则:
ALTER USER ‘root'@‘localhost' IDENTIFIED BY ‘password' PASSWORD EXPIRE NEVER;
#3更新一下用户的密码 :
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'
#刷新并应用权限
FLUSH PRIVILEGES;
- 用docker-compose安装canal
1.下载canal-server镜像
docker pull canal-server:v1.1.4
2.docker-pose.yml 配置文件
version: '2'
services:
canal-server:
image: canal/canal-server:v1.1.4
container_name: canal-server
ports:
- 11111:11111
environment:
- canal.instance.mysql.slaveId=12
- canal.auto.scan=false
- canal.destinations=example
- canal.instance.master.address=10.8.6.13:3306
- canal.instance.dbUsername=canal
- canal.instance.dbPassword=canal
- canal.mq.topic=example
- canal.instance.filter.regex=.*\..*
volumes:
- ./canal-server/conf/:/admin/canal-server/conf/
- ./canal-server/logs/:/admin/canal-server/logs/
canal.instance.mysql.slaveId: mysql的slaveid, 不要与my.cnf一样。
canal.instance.master.address: mysql的服务地址
canal.instance.dbUsername: mysql 的账户
canal.instance.dbPassword: mysql密码
canal.instance.filter.regex: 监听的表,支持表达式。 .… 为监听所有表
查看更多配置内容
启动: docker-compose up -d
最后
以上就是时尚世界最近收集整理的关于docker-compose安装和启动Canaldocker-compose安装和启动Canal的全部内容,更多相关docker-compose安装和启动Canaldocker-compose安装和启动Canal内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复