狼愛上貍

          我胡漢三又回來了

          SYBASE數據庫修復及sa口令恢復

          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命令修改密碼即可。


          traceback:http://www.easyrecovery.com.cn/shujuku/2007-3-30/sybase-sa.htm

          posted on 2007-07-02 11:43 狼愛上貍 閱讀(354) 評論(0)  編輯  收藏 所屬分類: Sybase

          主站蜘蛛池模板: 永清县| 天柱县| 乌苏市| 九龙县| 武冈市| 宜都市| 南漳县| 乌鲁木齐市| 方城县| 嘉峪关市| 石景山区| 肥东县| 阳信县| 贺州市| 镇雄县| 铜梁县| 茌平县| 建德市| 墨江| 兴文县| 卢湾区| 正镶白旗| 博野县| 巫山县| 江陵县| 台北市| 广水市| 家居| 横峰县| 丁青县| 封丘县| 阿克苏市| 平度市| 陆丰市| 宁武县| 韶山市| 江达县| 昭觉县| 小金县| 兴仁县| 兴义市|