欢迎访问机房运维工作室

爱数知识库

AnyBackup 7.0.x Docker 环境下 MySQL 容器重启后,MySQL 备份报错,Can't connect to MySQL service

频道:爱数知识库 日期: 浏览:284

AnyBackup 7.0.x Docker 环境下 MySQL 容器重启后,MySQL 备份报错,Can't connect to MySQL service on <ip>

关键字

Docker,MySQL

适用产品

  • AnyBackup 7.0.x

​

问题描述

AnyBackup 7.0.x Docker 环境下 MySQL 容器重启后,MySQL 备份报错,Can't connect to MySQL service on '172.17.0.2'(111)。

​

问题影响

Docker 环境下 MySQL 备份失败。

​

问题原因

MySQL 容器重启,docker 重新分配 ip 地址,导致客户端容器访问不到 MySQL 容器。

​

解决方案

为了解决该问题,需要修改 MySQL 容器的 ip 地址为原来的 ip 地址或者 AB 控制台重新授权 MySQL 实例,hostname 填写新的 MySQL 容器 ip 地址,请按照以下步骤执行:

步骤一:查看现在的 MySQL 容器的 ip 地址。

登录到客户端后台,输入以下命令查看 MySQL 容器 id (下图 CONTAINER ID 为容器 id):

docker ps

输入以下命令查看容器的详细信息,获取容器 ip:

docker inspect <容器 id >

步骤二:登录 AnyBackup 操作员用户,选择资源->客户端->MySQL客户端->权限配置->MySQL 数据库,修改 hostname 重新授权即可。

更多信息

Docker 环境下,若运行容器时使用的是默认的桥接模式,Docker 会自动分配容器 ip,每次重启容器都会自动分配 ip 地址,导致容器重启后容器 ip 地址可能会产生变化。