如何重建sybsystemprocs系统数据库

  • 来源: IT部落 作者: 若水   2008-03-25/14:16
  • 依照以下步骤可以实现移动sybsystemprocs系统数据库以及设备的任务。同时这个过程也可以用来扩建sybsystemprocs系统数据库。

    以下过程中所提到的语法结构,可以参看SYBASE相关资料。www.chinai tp 采集 ow er.comL8nOlHl

    SYBASE提醒您,在修改系统表时,SQL Server要以单用户模式运行,同时要以"sa"用户登录。www.chinai tp 采集 ow er.comL8nOlHl

      1. 保留驻留在sybsystemprocs系统数据库中自定义的存储过程脚本。
      2. 单用户模式启动SQL Server,执行:
        1> sp_configure "allow updates",1
        2> go
        1> reconfigure with override(10.0版本以上,省略此步)
        2> go
      3. 删除sybsystemprocs系统数据库:
        1> use master
        2> go
        1> drop database sybsystemprocs
        2> go
        在重建sybsystemprocs系统数据库之前,不要创建任何其他数据库。
      4. 删除sysdevices系统表中有关sybsystemprocs系统数据库的信息:
        1> begin tran
        2> delete from sysdevices where name="sysprocsdev"
        我们假定sysprocsdev是默认的sybsystemprocs系统数据库设备名。
        3> select * from sysdevices
        确定删除是否正确有效,如果正确,执行:
        4> commit tran
        否则,执行:
        4>rollback
      5. 重启SQL Server.
      6. 创建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。
      7. sybsystemprocs系统数据库:
        1> create database sybsystemprocs on sysorocsdev=50
        2> go

        在sysdatabases系统表中,sybsystemprocs系统数据库的dbid=4,如果在重建
        sybsystemprocs系统数据库之前,没有创建任何其他数据库。
      8. 以多用户模式启动SQL Server,并执行:
        1> sp_configure "allow updates",0
        2> go
        3> reconfigure with override(10.0版本以上,省略此步)
        4> go
      9. 运行installmaster脚本:
        %isql -Usa -Psa_password -Sserver_name -n -iinstallmaster -o< output_file
        installmaster脚本在$SYBASE/scripts路径下。
      10. 重建sybsystemprocs系统数据库中的用户自定义存储过程 。

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多