如何在infinidb中取消/中止回滚?

时间:2015-08-03 06:38:03

标签: mysql infinidb

当我启动infinidb时,我收到以下错误消息,使服务无法启动。在日志文件中,它表示回滚存在问题。有没有办法中止回滚,以便我可以再次启动服务?我可以丢失一些数据。

Starting Calpont InfiniDB Database Platform: ....... DONE

Warning! The DBRM is currently in Read-Only mode!
Updates will not propagate!

Starting Calpont InfiniDB MySQL:
Starting MySQL
. *
Validate InfiniDB System Catalog:
Validation Succesfully Completed
Perform Functionality test:
InfiniDB Logging check: DONE
Platform Process check: ERROR: Problem with InfiniDB process DMLProc, should be a single version running

***Stopping InfiniDB to allow the process problem to be resolved.

Shutting down Calpont InfiniDB MySQL:
Shutting down MySQL
... *
Shutting down Calpont InfiniDB Database Platform:

/var/log/Calpont/crit.log

DMLProc[4292]: 41.458706 |0|0|0| C 20 CAL0002: DMLProc failed to start due to :  problem with rollback.  Version buffer file  does not exists.

我已经尝试删除/usr/local/Calpont/data1/systemFiles/dataTransaction中的文件,但它仍然无法启动。

1 个答案:

答案 0 :(得分:0)

这就是我能够解决的问题。

服务开始时:

# service infinidb start

在另一个ssh会话中,转到/usr/local/Calpont/bin并查找导致问题的事务ID:

# ./rollback -p

找到后,立即运行rollback命令,其中包含您看到的事务ID:

./rollback -r 64536

它会响应,这次服务成功启动。我不得不两次这样做,因为我的第一次尝试可能无法按时回滚交易。