Sybase數(shù)據(jù)庫修復(fù)技巧匯總
導(dǎo)讀:Sybase數(shù)據(jù)庫中數(shù)據(jù)的重要性決定了Sybase數(shù)據(jù)庫修復(fù)的必要性,Sybase數(shù)據(jù)庫的修復(fù)是要講求一定的技巧,下文中就為大家總結(jié)了幾點(diǎn)技巧,相信對大家進(jìn)行Sybase數(shù)據(jù)庫修復(fù)工作會(huì)非常有用的。
Sybase數(shù)據(jù)庫修復(fù)分為兩種情況:
1.數(shù)據(jù)庫所用的設(shè)備正常,而庫demodb的狀態(tài)為suspect。
(1)以sa注冊
isql -u sa -P
1>
(2)修改server屬性,置系統(tǒng)表為允許修改該狀態(tài)。
1>sp_configure "allow updates",1
2>go
3>recofigure with override
4>go
(3)Sybase數(shù)據(jù)庫修復(fù),修改數(shù)據(jù)庫的狀態(tài),置數(shù)據(jù)庫狀態(tài)為server啟動(dòng)時(shí)不檢測。
1>update master.sysdatabases set status = -32768
2>where name = "demodb"
3>go
(4)重啟server。
(5)修改數(shù)據(jù)庫的狀態(tài),置數(shù)據(jù)庫狀態(tài)為正常。
1>update master.sysdatabases set status = 0
2>where name ="demodb"
3>go
(6)修改server屬性,置系統(tǒng)表為不允許修改狀態(tài)。
1>sp_configure "allowupdates",0
2>go
3>reconfigure with override
(7)再次重啟server。
至此,如果數(shù)據(jù)庫能夠正常,則恢復(fù)完畢,至此,Sybase數(shù)據(jù)庫修復(fù)完成。
以上步驟中,也可以用單用戶模式啟動(dòng)server,命令為startserver -m,而不必修改server的"allow updates"屬性。SYBASE 11及以上版本的server只需重啟,不需要執(zhí)行reconfigure with override。如果上述方法仍不能恢復(fù)數(shù)據(jù)庫,則只能使用dbcc命令刪除該數(shù)據(jù)庫,然后重新建立。
2.數(shù)據(jù)庫所占用的設(shè)備不正常,庫的狀態(tài)為suspect 使用sp_helpdb和sp_helpdevice命令查出數(shù)據(jù)庫設(shè)備的邏輯名、物理名、設(shè)備號、大小等信息。如果上述命令無法查出數(shù)據(jù)庫設(shè)備的信息,可使用select * from master.sydatabases和select * from master.sysdevices。然后用disk reinit重建設(shè)備。最后,按照1的步驟恢復(fù)數(shù)據(jù)庫。
上述第一種情況數(shù)據(jù)庫損壞程度較輕,對數(shù)據(jù)庫內(nèi)容檢查后即可使用。而在第二種情況下,如果數(shù)據(jù)庫的日志建立在不同的設(shè)備上,只是數(shù)據(jù)庫的日志設(shè)備損壞,數(shù)據(jù)庫的損壞程度會(huì)較輕,Sybase數(shù)據(jù)庫修復(fù)過程中,只是有些交易無法恢復(fù);如果數(shù)據(jù)庫的設(shè)備損壞,整個(gè)數(shù)據(jù)庫的內(nèi)容會(huì)全部丟失,其中表、表的內(nèi)容、存儲過程都需要重建。所以建議數(shù)據(jù)庫和數(shù)據(jù)庫的日志建立在不同的設(shè)備上。
系統(tǒng)錯(cuò)誤日志errorlog文件存有SYBASE數(shù)據(jù)庫系統(tǒng)的錯(cuò)誤信息,系統(tǒng)出錯(cuò)時(shí)應(yīng)先檢查此文件,據(jù)此判斷錯(cuò)誤原因,找出解決辦法,以免誤操作。
本文就為大家介紹這些,更多更好的方法還需要大家在以后的工作中細(xì)心總結(jié),掌握了這些技巧,Sybase數(shù)據(jù)庫的修復(fù)工作就可以輕松解決啦。
【編輯推薦】
- Sybase數(shù)據(jù)庫復(fù)制服務(wù)器三大特性詳析
- Sybase數(shù)據(jù)庫復(fù)制服務(wù)器的市場狀況
- Sybase數(shù)據(jù)庫維護(hù)技巧總結(jié)
- Sybase數(shù)據(jù)庫死鎖的應(yīng)對策略