SQL2008 無日誌附加MDF檔案

2022-02-07 01:59:57 字數 1119 閱讀 8256

sql資料在附加的時候..有時會因為日誌檔案過大..或者一些其他問題造成附加失敗..

筆者遇到的問題是資料庫主檔案(*.mdf)超過25g..日誌檔案超過200g..附加的耗時簡直日了狗了..最後超時..附加失敗..

所以就在想不要這個日誌檔案了行不行..最後發現了這篇文章.. 閱讀原文主要報錯資訊

無法重新生成日誌,原因是資料庫關閉時存在開啟的事務/使用者,該資料庫沒有檢查點或者該資料庫是唯讀的。

解決的方案:

1. 新建乙個同名的資料庫.最好是區分大小寫.. 甚至建立時的邏輯名都盡量保持一致

2. 關閉sql服務..不要分離新建的庫..(以下是命令..在"執行"視窗執行)

net stop mssqlserver

3. 這個時候因為服務停掉了..所以可以操作實際的資料檔案*.mdf..用原有的同名mdf檔案覆蓋新建庫的mdf檔案..然後啟動sql服務...(以下是命令..在"執行"視窗執行)

net start mssqlserver

這時系統還沒有檢查異常..先別重新整理..

4. 按順序執行以下語句,, 注意看注釋 有跳過的語句

把newdbname改成你的資料庫名字

--

設定庫為緊急狀態

alter

database newdbname set

emergency

--設定為單使用者模式

alter

database newdbname set

single_user

--檢查並重建日誌檔案

dbcc checkdb('

newdbname

',repair_allow_data_loss)

--上條執行時間比較長。耐心等待!

--如果報錯..執行以下, 沒有報錯..可以跳過

dbcc checkdb('

newdbname

',repair_rebuild)

--恢復成多使用者模式

alter

database newdbname set multi_user

一般執行到這裡就已經好了..

重新整理看看..

SQL2008附加資料庫報錯

sql server 2008如何匯入mdf,ldf檔案網上找了很多解決sql server匯入其他電腦拷過來的mdf檔案,多數是不全,遇到的解決方法不一樣等問題,下邊是找到的解決問題的最全面方法!將mdf,ldf檔案匯入到sql server 2008資料庫當中,下面提供兩種辦法 第一種 1 選擇...

sql2008定期清理映象日誌

create proc dbo cleantranlog as begin declare num tinyint 執行次數 declare backlogname varchar 100 備份日誌檔名稱 declare backlogpath varchar 100 備份日誌檔案的路徑 set n...

清空sql2008 日誌

alter database dnname set recovery 簡單模式 go右鍵 任務 收縮 檔案 確定 下來資料庫的日誌只保留了1m alter database dnname set recovery full 還原為完全模式 go優點 此清除日誌所執行消耗的時間短,90gb的日誌在分鐘...