. 保留驻留在sybsystemprocs系统数据库中自定义的存储过程脚本。 .单用户模式启动SQL Server,执行: 1> sp_configure "allow updates",1 2> go 1> reconfigure with override(10.0版本以上,省略此步) 2> go .删除sybsystemprocs系统数据库: 1> use master 2> go 1> drop database sybsystemprocs 2> go 在重建sybsystemprocs系统数据库之前,不要创建任何其他数据库。 .删除sysdevices系统表中有关sybsystemprocs系统数据库的信息: 1> begin tran 2> delete from sysdevices where name="sysprocsdev" 我们假定sysprocsdev是默认的sybsystemprocs系统数据库设备名。 3> select * from sysdevices 确定删除是否正确有效,如果正确,执行: 4> commit tran 否则,执行: 4>rollback .重启SQL Server. .创建sybsystemprocs系统数据库设备: 1> disk init name="sysprocsdev",physname="physical_path",vdevno=4,size=25600 2> go 其中size是以页为单位(512页=1M)。 sybsystemprocs系统数据库设备的vdevno应该是4,SQL Server在单用户模式下4不能被重新利用,所以 如果以上语句执行时出现问题,请重启SQL Server。
.sybsystemprocs系统数据库: 1> create database sybsystemprocs on sysorocsdev=50 2> go 在sysdatabases系统表中,sybsystemprocs系统数据库的dbid=4,如果在重建 sybsystemprocs系统数据库之前,没有创建任何其他数据库。 .以多用户模式启动SQL Server,并执行: 1> sp_configure "allow updates",0 2> go 3> reconfigure with override(10.0版本以上,省略此步) 4> go .运行installmaster脚本: %isql -Usa -Psa_password -Sserver_name -n -iinstallmaster -o< output_file installmaster脚本在$SYBASE/scripts路径下。 .重建sybsystemprocs系统数据库中的用户自定义存储过程 。
Q.如何恢复master数据库?
A.ASE can''''t setup and has no valid dump of master
(4)重启SQL server 1>use master 2>go 1>update sysdatabases set status=0 where name="database_name" 2>go 1>sp_configure "allow updates",0 2>go 1>shutdown with nowait 2>go