最近的用戶反饋在使用SQL2000時,拷貝原來文件附加數(shù)據(jù)庫出現(xiàn)錯誤提示:錯誤 9003:LSN (35494:16:2) 無效。該 LSN 是傳遞給數(shù)據(jù)庫 '數(shù)據(jù)庫名' 中的日志掃描操作的。那么遇到這樣的情況要如何解決呢?小編給大家?guī)砜尚械慕鉀Q方法!
這種情況是數(shù)據(jù)庫的日志文件(ldf)數(shù)據(jù)不同步造成的,可以根據(jù)數(shù)據(jù)庫(mdf)文件重建日志文件修復(fù)。
修復(fù)步驟如下:數(shù)據(jù)表名按自己的來改!
假設(shè)損壞的數(shù)據(jù)庫名稱是hfkj,對應(yīng)的數(shù)據(jù)庫名稱是hfkj.mdf,日志文件是hfkj_log.ldf,數(shù)據(jù)庫所在文件夾為D:\Data;
1、先把損壞的數(shù)據(jù)庫對應(yīng)的文件hfkj.mdf和hfkj_log.ldf備份到別的地方;
2、在SQL Server和企業(yè)管理器中創(chuàng)建一個與損壞數(shù)據(jù)庫同名的數(shù)據(jù)庫,對應(yīng)的數(shù)據(jù)庫文件名稱也是hfkj.mdf和hfkj_log.ldf;
3、停止SQL Server服務(wù);
4、刪除第2步新建數(shù)據(jù)庫產(chǎn)生的hfkj_log.ldf文件;
5、用損壞的數(shù)據(jù)庫數(shù)據(jù)文件hfkj.mdf覆蓋第2步新建數(shù)據(jù)庫產(chǎn)生的hfkj.mdf文件
6、啟動SQL Server服務(wù);
7、進入企業(yè)管理器,刷新數(shù)據(jù)庫狀態(tài),此時數(shù)據(jù)庫hfkj狀態(tài)為“置疑”;
8、在SQL Server服務(wù)器屬性中設(shè)置SQL Server數(shù)據(jù)庫服務(wù)器“允許對系統(tǒng)目錄直接修改”
9、從SQL企業(yè)管理器的“工具”菜單啟動“SQL 查詢分析器”;
10、輸入以下代碼并運行使hfkj數(shù)據(jù)庫進入緊急修復(fù)模式:
update sysdatabases set status=-32768 where dbid=DB_ID('hfkj')
這句語句執(zhí)行后,刷新企業(yè)管理器,hfkj數(shù)據(jù)庫的狀態(tài)變成“只讀\置疑\脫機\緊急模式”;
11、輸入以下語句并執(zhí)行重建日志文件:
dbcc rebuild_log('hfkj','D:\Data\hfkj_log.ldf')
這句語句執(zhí)行后,刷新企業(yè)管理器,hfkj數(shù)據(jù)庫的狀態(tài)變成“只供DBO使用”;
12、輸入并執(zhí)行正面的語句設(shè)置數(shù)據(jù)庫hfkj到正常狀態(tài):
exec sp_dboption 'hfkj','dbo use only','false'
這句語句執(zhí)行后,刷新企業(yè)管理器,hfkj數(shù)據(jù)庫變成正常狀態(tài)。
到此,hfkj數(shù)據(jù)庫修復(fù)成功。最后不要忘記關(guān)閉第8步中打開的“允許對系統(tǒng)目錄直接進行修改”服務(wù)器開關(guān)。