Mysql-8.0 Canal-1.1.6配置踩坑

我的canal 是安装在虚拟机中 要同步 本地mac中的mysql数据

虚拟机中的dns的问题

首先确保虚拟机可以联通外网
vim /etc/sysconfig/network-scripts/ifcfg-ens33,配置好 dns

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="3701b9a1-e0f9-4a6e-ab8f-0a68ec101f35"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=172.16.91.154 # 新增本行
NETMASK=255.255.255.0 # 新增本行
GATEWAY=172.16.91.1 # 新增本行,这是前面vnet2的gateway ip
DNS1=8.8.8.8
DNS2=114.114.114.114 # 新增本行

重启网络

service network restart

canal 下载

wget --no-check-certificate https://github.com/alibaba/canal/releases/download/canal-1.1.6/canal.deployer-1.1.6.tar.gz

注意添加参数 --no-check-certificate,可能回报 ssl 错误

创建mysql新用户

DROP USER 'canal'@'%'; 
CREATE USER 'canal'@'%' IDENTIFIED BY 'canal'; 
GRANT ALL PRIVILEGES ON *.* TO 'canal' @'%' WITH GRANT OPTION;
FLUSH PRIVILEGES; 

(这个命令在msql8.0中会报语法错误)

GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' IDENTIFIED BY 'canal';  

测试虚拟机是否可以联通本地mysql

telnet 192.168.91.124.3 3306

结果如下:
在这里插入图片描述

修改 Mysql8.0默认加密连接方式修改

ALTER USER 'canal'@'%' IDENTIFIED WITH mysql_native_password BY 'canal'

因为mysql 8.0 默认密码加密 使用的 caching_sha2_password,在连接canal 时 会报连接失败

改成 mysql_native_password 则连接成功。

修改my.cnf 文件

homebrew安装的mysql配置文件位置: /usr/local/etc/my.cnf
如果不在这个位置可通过以下命令查看:

mysqld --help --verbose | more (查看帮助,按空格下翻)

你会看到开始的这一行(表示配置文件默认读取顺序)

Default options are read from the following files in the given order:
/etc/my.cnf  /etc/mysql/my.cnf  /usr/local/etc/my.cnf  ~/.my.cnf

打开my.cnf 文件

# Default Homebrew MySQL server config
[mysqld]
# Only allow connections from localhost
#bind-address = 127.0.0.1
#mysqlx-bind-address = 127.0.0.1
log-bin=mysql-bin #开启binlog
binlog-format=ROW
server_id=1 #配置MySQL replaction需要定义,不要和canal的 slaveId重复

记得注释掉 bind-address = 127.0.0.1, mysqlx-bind-address = 127.0.0.1,这两个配置 注释中也说明了只允许本机连接,不然虚拟机的canal 还是会连接失败

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值