环境版本:
canal:1.1.5
mysql:Server version: 8.0.19 Homebrew
启动canal服务
sh bin/startup.sh
报错
花了一上午的时间终于找到原因:
因为本人使用mysql版本为8.0,而创建用户时默认的密码加密方式为caching_sha2_password,所以修改为mysql_native_password 就行
首先找到conf/example/instance.properties文件中
canal.instance.dbUsername对应的用户名
进入mysql,查看用户信息表
select host, user, authentication_string, plugin from user;
结果:
我这边canal的用户名和密码都是: canal
myql8.0版本的密码加密方式为caching_sha2_password,所以修改为mysql_native_password 就行并重新更新密码
ALTER USER 'canal'@'%' IDENTIFIED WITH mysql_native_password BY 'canal'; #更新一下用户密码
FLUSH PRIVILEGES; #刷新权限