ECS配置Mysql+PXC问题

Q1:部署第一个PXC节点,报错

部署第一个PXC节点代码:
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=xxx -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=xxx -v v1:/var/lib/mysql --privileged --name=node1 --net=net1 --ip 172.18.0.2 pxc

报错代码:
Error response from daemon: driver failed programming external connectivity on endpoint node1 (a02d364869f3fa81e80c75339780150f8b5e566fa8867f87d08d04bdc25fe554): Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use.

原因分析:
之前在云服务器上部署过前后端项目,启动了mysql服务,而创建PXC结点也是需要启动mysql服务的,固两者冲突了,需要先将mysql服务关闭

解决方法:
netstat -tanlp 查询mysql线程PID
kill PID 关闭目标PID程序

Q2:配置第二个PXC结点,报错

部署第二个PXC节点代码:
docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=xxx -e CLUSTER_NAME=PXC -e XTRABACKUP_PASS WORD=xxx -e CLUSTER_JOIN=node1 -v v2:/var/lib/mysql --privileged --name=node2 --net=net1 --ip 172.18.0.3 pxc

报错代码:
Error response from daemon: Conflict. The container name "/node2" is already in use by container 3f43bb9c44fea3 32e1f40f3593eb157e9c05827af2fb944da8e5b8221d85f21c. You have to remove (or rename) that container to be able to reuse that name..

原因分析:
创建完node1之后又快速创建了node2结点,这是不对的,因为此时数据库信息还不一定同步完成

解决方法:
创建node1第一个PXC节点后,用数据库客户端软件(navicat)尝试连接目标端口数据库或等几分钟挂着,连接成功则可以继续创建后续多节点

Q3:集群节点连接不上数据库

报错代码:
Can‘t connect to MySQL server on 'x.x.x.x (10061)'

原因分析:
自己的流程和教程一致,唯一不同的是教程使用的是虚拟机,笔者使用的是ECS云服务器

解决方法:
ECS安全组策略开放目标映射端口即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值