Sybase数据库修复技巧汇总

发表于:2011-12-29 09:49

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:qqread    来源:51Testing软件测试网采编

  导读:Sybase数据库中数据的重要性决定了Sybase数据库修复的必要性,Sybase数据库的修复是要讲求一定的技巧,下文中就为大家总结了几点技巧,相信对大家进行Sybase数据库修复工作会非常有用的。

  Sybase数据库修复分为两种情况:

  1、数据库所用的设备正常,而库demodb的状态为suspect。

  (1)以sa注册

    isql -u sa -P
    1>

  (2)修改server属性,置系统表为允许修改该状态。

    1>sp_configure "allow updates",1
    2>go
    3>recofigure with override
    4>go

  (3)Sybase数据库修复,修改数据库的状态,置数据库状态为server启动时不检测。

    1>update master.sysdatabases set status = -32768
    2>where name = "demodb"
    3>go

  (4)重启server。

  (5)修改数据库的状态,置数据库状态为正常。

    1>update master.sysdatabases set status = 0
    2>where name ="demodb"
    3>go

  (6)修改server属性,置系统表为不允许修改状态。

    1>sp_configure "allowupdates",0
    2>go
    3>reconfigure with override

  (7)再次重启server。

  至此,如果数据库能够正常,则恢复完毕,至此,Sybase数据库修复完成。

  以上步骤中,也可以用单用户模式启动server,命令为startserver -m,而不必修改server的"allow updates"属性。SYBASE 11及以上版本的server只需重启,不需要执行reconfigure with override。如果上述方法仍不能恢复数据库,则只能使用dbcc命令删除该数据库,然后重新建立。

  2、数据库所占用的设备不正常,库的状态为suspect 使用sp_helpdb和sp_helpdevice命令查出数据库设备的逻辑名、物理名、设备号、大小等信息。如果上述命令无法查出数据库设备的信息,可使用select * from master.sydatabases和select * from master.sysdevices。然后用disk reinit重建设备。最后,按照1的步骤恢复数据库。

  上述第一种情况数据库损坏程度较轻,对数据库内容检查后即可使用。而在第二种情况下,如果数据库的日志建立在不同的设备上,只是数据库的日志设备损坏,数据库的损坏程度会较轻,Sybase数据库修复过程中,只是有些交易无法恢复;如果数据库的设备损坏,整个数据库的内容会全部丢失,其中表、表的内容、存储过程都需要重建。所以建议数据库和数据库的日志建立在不同的设备上。

  系统错误日志errorlog文件存有SYBASE数据库系统的错误信息,系统出错时应先检查此文件,据此判断错误原因,找出解决办法,以免误操作。

  本文就为大家介绍这些,更多更好的方法还需要大家在以后的工作中细心总结,掌握了这些技巧,Sybase数据库的修复工作就可以轻松解决啦。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号