sql server 2005 只有 .mdf 文件如何附加
、新建一個同名數(shù)據(jù)庫,停止 sql 服務(wù),刪除新建數(shù)據(jù)庫 .ldf 文件
2 、將要附加的數(shù)據(jù)庫的 .mdf 文件覆蓋剛新建的 .mdf 文件,并重啟服務(wù)
這時數(shù)據(jù)庫 DATA 目錄下只有一個 .mdf 文件,啟動 sql server Management studio -- 新建查詢
use master
go
alter database db_name set emergency
go
--
置數(shù)據(jù)庫為單用戶模式
alter database db_name set single_user with rollback immediate
go
--
重建數(shù)據(jù)庫日志文件
alter database db_name Rebuild Log on (name=log_name,filename='C:\log_name.ldf')
go
--
最后設(shè)置數(shù)據(jù)庫為多用戶模式。
alter database dbname set multi_user
通過以上方法修復(fù)數(shù)據(jù)庫后,可以
dbcc checkdb
一下數(shù)據(jù)庫,如果發(fā)現(xiàn)頁級錯誤,可以通過以下命令修復(fù)。
這兩個命令要在單用戶的情況下使用
Use master
go
sp_dboption
數(shù)據(jù)庫名
, single, true
dbcc checkdb(dbname,REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb(dbname,REPAIR_REBUILD)
-- 最后再設(shè)置數(shù)據(jù)庫為多用戶模式
?
?
下面是我實(shí)際測試成功的語句:
?
[sql] view plain copy
?
1???????? use master;?
2???????? ??
3???????? GO?
4???????? alter database [FightWarPkDb] set Emergency;?
5???????? GO?
6???????? exec sp_dboption [FightWarPkDb], single, true ?
7???????? GO?
8???????? -- 重建數(shù)據(jù)庫日志文件 ?
9???????? alter database [FightWarPkDb] Rebuild Log on ( name =FightWarPkDb,filename= 'F:\SqlDb\FightWarPkDb_log.LDF' )?
10????? GO?
11????? alter database [FightWarPkDb] set multi_user?
12????? GO?
?
注:針對有多個分件組與文件的數(shù)據(jù)庫,也只需要新建一個主文件就可以了,覆蓋也只需要覆蓋主文件;
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
