文档解释
Error number: 3808; Symbol: ER_BINLOG_MASTER_KEY_ROTATION_FAIL_TO_ROTATE_LOGS; SQLSTATE: HY000
Message: Failed to rotate one or more binary or relay log files. A new binary log master key was generated and will be used to encrypt new binary and relay log files. There may still exist binary or relay log files using the previous binary log master key.
错误说明:
ER_BINLOG_MASTER_KEY_ROTATION_FAIL_TO_ROTATE_LOGS (3808)表示在尝试使用新主密钥旋转日志提交组时失败。
常见案例
一个典型的场景是,具有多个逻辑复制(LL)协议的会话正在将从服务器上复制的更改日志传输到从服务器。为了更安全,从服务器的主服务器配置了一个新的主密钥,并尝试将所有活动的LL会话旋转主密钥,但出现了ER_BINLOG_MASTER_KEY_ROTATION_FAIL_TO_ROTATE_LOGS。
解决方法:
需要采取的最佳措施取决于是否可以安全清除已使用旧主密钥加密的此复制组执行状态。
在一些情况下,很难可靠地安全清除此状态。 为了避免重置复制,例如,如果可以清理复制密钥,并使用该密钥重新发送已发送的事务,则可 asEncryption。
否则,最好重置复制,执行如下操作:
1. 将从服务器暂停,直到所有现有的LL会话完成,通常使用STOP SLAVEmysql_slave_net_timeout;可以令人满意。
2. 根据实际情况,注销或删除所有在从服务器上使用的旧主密钥。
3. 使用新主密钥继续从服务器(并将旧主密钥从本地配置文件中删除)。
4. 重新开始先前停止的LL会话。
5. 查看错误日志以检查是否存在任何额外的问题。