常见错误及解决方法
1、错误921:
报错信息:Database '%.*s' has not been recovered yet please wait and try again。
原因分析:Error921错误发生在数据库服务启动进行数据恢复时,由于某些异常导致恢复无法完成,数据库被标记为“suspect”状态,一般数据库的921错误都是由于操作系统异常断电、sybase ASE服务异常关闭导致。
解决办法:查看设备及设备地址;建新的日志设备;修改数据库状态为32768;停数据库,修改数据库端口,启数据库(或者单用户启动编辑启动脚本在最后一行末尾添加m);挂载新的日志空间;重建日志;将数据库状态改为0;重启数据库,查看数据库状态是否为0,YWST日志是否有空间;将数据库端口改回来,重启数据库(单用户的方式去掉m)。
2、错误840:
报错信息:error840 error208 Error (840) Device 'DEV_TEST' (with physical name '/home/sybase/data/DEV_TEST.dat', and virtual device number 13) has not been correctly activated at startup time. Please contact a user with System Administrator (SA) role. Error (208) DB_TEST..test not found. Specify owner.objectname or use sp_help to check whether the object exists (sp_help may produce lots of output)。
原因分析:该报错是数据库找不到对应的设备文件了,可能是路径错误,或者修改了设备路径导致。
解决办法:创建设备测试;创建数据库;添加数据库属性;创建表,向里面插入一条数据;将设备文件迁移到/home/sybase/data/rSSddata下面,启动数据库后访问报错840;修改数据库文件的路径,并且将系统表的路径改成和迁移的路径一样,设置sybase有访问权限。
3、错误691:
报错信息:Encountered invalid logical page '0' while accessing database 'YWST'(6),object 'syslogs'(8),index 'syslogs'。
原因分析:可能是由于ASE安装/服务初始化程序的BUG导致的。
解决办法:修改interfaces文件,将服务名改为sysservers.srvnetname对应的值;或者修改sysservers中相应记录的srvnetname的值为interfaces文件中的服务名,在server Config中获取本机sybase备份服务器名称;执行“sp_addserver SYB_BACKUP, null, xaobai_BS”;重启服务器。
4、错误7205:
报错信息:Can't open a connection to site 'SYB_BACKUP'. See the error log file in the ASE boot directory。
原因分析:ASE无法通过sysservers中的srvnetname在interfaces中获取相关信息。
解决办法:把interfaces文件中的服务名改为sysservers.srvnetname对应的值;或者修改sysservers中相应记录的srvnetname的值为interfaces文件中的服务名,在server config中获取本机sybase备份服务器名称;执行“sp_addserver SYB_BACKUP, null, xaobai_BS”;重启服务器。
5、错误7203:
报错信息:Can't open a connection to site 'SYB_BACKUP'. See the error log file in the ASE boot directory。
原因分析:ASE无法通过sysservers中的srvnetname在interfaces中获取相关信息。
解决办法:把interfaces文件中的服务名改为sysservers.srvnetname对应的值;或者修改sysservers中相应记录的srvnetname的值为interfaces文件中的服务名,在server config中获取本机sybase备份服务器名称;执行“sp_addserver SYB_BACKUP, null, xaobai_BS”;重启服务器。
FAQs
1、问题:Sybase备份时出现“Database '%.*s' has not been recovered yet”错误怎么办?
回答:这是由于数据库服务启动进行数据恢复时出现异常,解决方法包括查看设备及设备地址、建新的日志设备、修改数据库状态为32768、停数据库并修改数据库端口、挂载新的日志空间、重建日志、将数据库状态改为0、重启数据库并检查状态等步骤。
2、问题:Sybase备份时提示“Device 'DEV_TEST' has not been correctly activated at startup time”错误是什么原因?
回答:这是因为数据库找不到对应的设备文件,可能是路径错误或修改了设备路径导致,解决方法包括创建设备测试、创建数据库、添加数据库属性、创建表并插入数据、将设备文件迁移到指定位置并启动数据库后访问报错840、修改数据库文件的路径并将系统表的路径改成和迁移的路径一样并设置sybase有访问权限等。