2009-05-04 111 views
1

我有一個數據庫,我們遇到了問題。不知怎的,日誌變成了400Gb,數據庫變得沒用了。我想刪除所有現有的連接到數據庫,然後分離數據庫。在MS Sql Server 2000中刪除數據庫連接

基本上我要做的是擺脫巨大的日誌文件,並創建一個新的和重新附加,如果它的工作。如果不是,我們將從備份中恢復。

回答

0

那麼基本上沒有命令會執行數據庫的攻擊。我們最終做的是關閉服務並創建mdf和ldf文件的空副本並替換sql server使用的那些文件。之後,我們從最後一次備份中恢復數據庫,然後再次運行(主要是)。

1

如果日誌無用,您可以使用這些命令,但請在生產服務器上應用之前自行記錄它們。 WITH NO_LOG

BACKUP LOG的disgard從日誌頁面,

的sp_helpdb爲尋找分貝

DBCC SHRINKFILE的文件名( '你的日誌文件名',0) - 用於集羣的物理文件大小指定。

1

如果您確定沒有打開的事務,則可以將數據庫置於單用戶模式。

ALTER DATABASE [YourDB] WITH NO_WAIT

SET SINGLE_USER當您完成將它放回多用戶模式 ALTER DATABASE [YourDB] SET MULTI_USER與NO_WAIT

是否

備份日誌yourdb使用truncate_only,那麼dbcc shrinkdatabase(yourdb)不會爲您收縮日誌文件?

+0

dbcc shrinkfile無法找到日誌文件,即使我知道我在輸入正確的名稱。嘗試使用命令只是連續運行。 – DForck42 2009-05-04 14:19:27

0
ALTER DATABASE [DB_NAME_HERE] SET SINGLE_USER WITH ROLLBACK IMMEDIATE 

ALTER DATABASE [DB_NAME_HERE] SET MULTI_USER 
相關問題