![R1soft 错误“正在运行的实例已发生 MySQL 恢复,无法继续”](https://linux22.com/image/722619/R1soft%20%E9%94%99%E8%AF%AF%E2%80%9C%E6%AD%A3%E5%9C%A8%E8%BF%90%E8%A1%8C%E7%9A%84%E5%AE%9E%E4%BE%8B%E5%B7%B2%E5%8F%91%E7%94%9F%20MySQL%20%E6%81%A2%E5%A4%8D%EF%BC%8C%E6%97%A0%E6%B3%95%E7%BB%A7%E7%BB%AD%E2%80%9D.png)
我正在我的服务器(cpanel)上使用 R1soft 备份工具并尝试恢复数据库备份,但它给出了错误“恢复失败”。在此处附加日志错误:
受保护的机器:正在运行的实例已发生 MySQL 恢复,无法继续 --> 管理器:无法启动临时数据库实例 管理器:代理在请求的操作期间报告错误 --> 管理器:无法启动临时数据库实例 --> 管理器:无法启动临时数据库实例 --> 管理器:代理在请求的操作期间报告错误
如果有人有任何想法那么请帮忙。
答案1
问题的原因如下:
启动数据库恢复时,CDP 服务器会将 MySQL 数据传输到代理,代理会将数据写入 cdp-agent 的 tmp 目录 (/var/lib/r1soft/tmp)。CDP 代理还会创建一个临时的 MySQL 实例来执行恢复。问题就从这里开始。代理无法启动临时实例。导致此故障的常见原因是 SELinux 和 Apparmor 等安全机制。
您可以使用以下解决方案修复此问题:
如果是由 SELinux 引起的,请在执行恢复时将 SELinux 置于宽容模式。如果运行 Apparmor,请运行“service apparmor trashdown”,只需为 mysqld 运行“aa-complain”和“service apparmor stop”将无法解决问题。一旦创建了临时 MySQL 实例,Connector/J 将连接到两个实例并将 InnoDB 数据库从临时实例迁移到主实例。
答案2
我遇到了这个问题,发现当它失败时,它会让进程在我的服务器上运行。我通过 SSH 登录并执行了 ps axfw | grep r1soft 并确定了负责的子进程并终止了它们。