SYBASE数据库修复及恢复sa口令的方法
创始人
2024-07-18 10:30:54
0

SYBASE数据库管理系统中数据库损坏后,重新建立数据库的时间比较长,这将给应用(特别是对时间要求特别严格的应用,如金融、证券等)造成很大的损失。而如果在应用中遗忘超级用户sa口令,更会给系统管理带来极大的不便,甚至很多操作都无法进行。本文介绍一种简便的SYBASE数据库修复及恢复sa口令的方法。以下假定server能正常启动,server名为SYBASE,数据库名为demodb。

一、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)修改数据库的状态,置数据库状态为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
     4>go

(7)再次重启server。

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

以上步骤中,也可以用单用户模式启动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的步骤恢复数据库。

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

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

二、 恢复sa口令

编辑RUN_SYBASE,在dataserver启动行尾加入参数 -psa,然后存盘退出,执行startserver -f RUN_SYBASE重启server,系统会给超级用户sa一个随机的密码,以此密码注册进入server,然后使用sp_password命令修改密码即可。

 

 

【编辑推荐】

.net连接Sybase的影响行数问题

sybase数据库备份的两种方式

sybase分页存储过程的实现

Sybase日期函数应用示例

Sybase分页显示存储过程

 

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
范例解读VB.NET获取环境变... VB.NET编程语言的使用范围非常广泛,可以帮助开发人员处理各种程序中的需求,而且还能对移动设备进行...
规避非法攻击 用好路由器远程管... 单位在市区不同位置设立了科技服务点,每一个服务点的员工都通过宽带路由器进行共享上网,和单位网络保持联...