mssqlserver恢復(fù)ldf文件數(shù)據(jù)的方法
現(xiàn)象描述
我們現(xiàn)在要面對(duì)的問(wèn)題是,針對(duì)wtlog_2008_m12這個(gè)數(shù)據(jù)庫(kù),只有MDF文件而LDF文件丟失了,SQL Server Management Studio中也沒(méi)有這個(gè)數(shù)據(jù)庫(kù),附加上也會(huì)提示錯(cuò)誤。
解決方法
(1)在SQL Server Management Studio刪除狀態(tài)為Recovery Pending的(即丟失了LDF的)問(wèn)題數(shù)據(jù)庫(kù)(如果有的話,應(yīng)該是在數(shù)據(jù)庫(kù)管理中沒(méi)有的)
(2)重命名老的MDF文件. 比如改為wtlog_2008_m12_bak.mdf
(3) 重建一個(gè)新的數(shù)據(jù)庫(kù), 名字跟丟失的數(shù)據(jù)庫(kù)完全一樣,比如為wtlog_2008_m12,LDF文件的名字如果為wtlog_2008_m12的話,數(shù)據(jù)庫(kù)提示報(bào)錯(cuò),說(shuō)邏輯名字已存在,但文件怎么也找不到,此處的LDF的文件命名為wtlog_2008_m12_log。 注意, 新的MDF的位置跟我們老的MDF的文件的位置相同. 這里的LDF文件的位置選在你想要存放的最終位置上(這個(gè)就是你所要的被恢復(fù)的LDF文件了).
(4)關(guān)閉SQL Server服務(wù),將新的MDF(wtlog_2008_m12.mdf)重命名掉(比如改為wtlog_2008_m12___.mdf), 老的MDF(wtlog_2008_m12_bak.mdf)命名回原來(lái)的名字(wtlog_2008_m12.mdf).
(5)開(kāi)啟SQL Server服務(wù),連接數(shù)據(jù)庫(kù),執(zhí)行下面語(yǔ)句,如果報(bào)錯(cuò)的話,請(qǐng)查看是否連接上數(shù)據(jù)庫(kù),或者有其他進(jìn)程連著數(shù)據(jù)庫(kù)。
alter database wtlog_2008_m12 set emergency
alter database wtlog_2008_m12 set single_user with rollback immediate
alter database wtlog_2008_m12 rebuild log on (name=wtlog_2008_m12, filename='D:/watcher/database/wtlog_2008_m12.ldf')
alter database wtlog_2008_m12 SET MULTI_USER with rollback immediate
(6)此時(shí),mdf和ldf的名字都為wtlog_2008_m12,刪除多余的mdf文件即可。
相關(guān)文章
SQL Server使用CROSS APPLY與OUTER APPLY實(shí)現(xiàn)連接查詢(xún)
這篇文章介紹了SQL Server使用CROSS APPLY與OUTER APPLY實(shí)現(xiàn)連接查詢(xún)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟與方法
mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟與方法...2007-03-03SqlServer數(shù)據(jù)庫(kù)腳本執(zhí)行命令行指令方式
這篇文章主要介紹了SqlServer數(shù)據(jù)庫(kù)腳本執(zhí)行命令行指令方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06delete誤刪數(shù)據(jù)使用SCN號(hào)恢復(fù)(推薦)
這篇文章主要介紹了使用scn號(hào)恢復(fù)誤刪數(shù)據(jù)問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12sql存儲(chǔ)過(guò)程獲取漢字拼音頭字母函數(shù)
sql存儲(chǔ)過(guò)程獲取漢字拼音頭字母函數(shù),需要的朋友可以參考下。2011-10-10SQL?Server使用T-SQL進(jìn)階之公用表表達(dá)式(CTE)
這篇文章介紹了SQL?Server中T-SQL的公用表表達(dá)式(CTE),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05sqlserver Case函數(shù)應(yīng)用介紹
Case具有兩種格式。簡(jiǎn)單Case函數(shù)和Case搜索函數(shù)。2011-04-04SQLSERVER全文目錄全文索引的使用方法和區(qū)別講解
這篇文章主要介紹了SQLSERVER全文目錄全文索引的使用方法,有圖有代碼,大家參考使用吧2013-11-11解決SQL Server的“此數(shù)據(jù)庫(kù)沒(méi)有有效所有者”問(wèn)題
解決SQL Server的“此數(shù)據(jù)庫(kù)沒(méi)有有效所有者”問(wèn)題,需要的朋友可以參考下。2011-12-12SQLSERVER數(shù)據(jù)備份文件的分割備份方法
這篇文章主要介紹了SQLSERVER數(shù)據(jù)備份文件的分割備份方法 ,需要的朋友可以參考下2014-12-12