數(shù)據(jù)庫(kù)xxzx_discuz,因生成大量日志使日志文件'xxzx_discuz_Log.LDF' 占滿(mǎn)了磁盤(pán)所有空間,使網(wǎng)站無(wú)法正常使用數(shù)據(jù)庫(kù)。
自己圖省事分離數(shù)據(jù)庫(kù)xxzx_discuz后,直接刪除'xxzx_discuz_Log.LDF' (因?yàn)槲募?,無(wú)法存放到回收站),重新附件到SQL Server時(shí)出現(xiàn)兩個(gè)提示:
------------------------------------------------------------------------------------------------------------------------------
SQL Server 企業(yè)管理器
---------------------------
為日志文件指定的文件名不正確。
將創(chuàng)建新的日志文件。
要繼續(xù)嗎?
---------------------------
是(Y) 否(N)
------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL-DMO (ODBC SQLState: 42000)
---------------------------
錯(cuò)誤 1813: 未能打開(kāi)新數(shù)據(jù)庫(kù) 'xxzx_discuz'。CREATE DATABASE 將終止。
設(shè)備激活錯(cuò)誤。物理文件名 'S:/PRogram Files/Microsoft SQL Server/MSSQL/data/xxzx_discuz_Log.LDF' 可能有誤。
---------------------------
確定
------------------------------------------------------------------------------------------------------------------------------
從而無(wú)法將數(shù)據(jù)庫(kù)正常附加到SQL Server 2000,正常情況下這樣操作是沒(méi)有問(wèn)題的,SQL Server會(huì)重新生成日志文件,但是因?yàn)橹俺霈F(xiàn)了磁盤(pán)空間不足,日志文件不完整,從而造成了無(wú)法正常附加。
4.再重啟sqlserver服務(wù)
5.此時(shí)打開(kāi)企業(yè)管理器時(shí)會(huì)出現(xiàn)置疑,先不管,執(zhí)行下面的語(yǔ)句(注意修改其中的數(shù)據(jù)庫(kù)名)
6.完成后一般就可以訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)了。這時(shí),數(shù)據(jù)庫(kù)本身一般還有問(wèn)題,解決辦法是:利用數(shù)據(jù)庫(kù)的腳本創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),然后通過(guò)DTS將數(shù)據(jù)導(dǎo)進(jìn)去就行了.
SQL代碼
- use master
- go
- sp_configure 'allow updates',1 reconfigure with override
- go
- update sysdatabases set status =32768 where name='置疑的數(shù)據(jù)庫(kù)名'
- go
- sp_dboption '置疑的數(shù)據(jù)庫(kù)名', 'single user', 'true'
- go
- dbcc checkdb('置疑的數(shù)據(jù)庫(kù)名')
- go
- update sysdatabases set status =28 where name='置疑的數(shù)據(jù)庫(kù)名'
- go
- sp_configure 'allow updates', 0 reconfigure with override
- go
- sp_dboption '置疑的數(shù)據(jù)庫(kù)名', 'single user', 'false'
- go