最近接连遇到客户在启动IQ数据库时,事务日志文件异常的错误,具体错误如下:
问题1:
DBSPAWN ERROR: -935
Unable to start specified database: Log file error
Error: Database cannot be started -- /xxxdb/xxxdb/xxdb.log not expecting any operations in transaction log
Database cannot be started
问题2:
Transaction log: /sybiq/sysiqsys/xxdb/xxxxdb.log...
E. 03/14 17:31:35. ***
ERROR *** Assertion failed: 201129 (15.4.1.3019)[xxxdb]
File is shorter than expected
DBSPAWN ERROR: -80
Unable to start database server
解决办法:
先备份一下原来的.db和.log文件,之后删除.log文件,
使用dblog -t db.log db.db重新生成一个Log文件。
用start_iq 命令正常启动该库,这两个问题都是采用此方法解决。
启动成功后,使用sp_iqcheckdb命令检查数据库一致性,无异常。
如果上述方法不能启动可以尝试使用-iqfrec和-f参数。
-f参数慎用,加上此参数后,启动不了就会彻底启不来了。