mssqlserver中數(shù)據(jù)庫(kù)變?yōu)榭梢?/p>
本機(jī)數(shù)據(jù)庫(kù)是mssqlserver,里面有個(gè)數(shù)據(jù)庫(kù)存的幾千萬(wàn)條數(shù)據(jù),今天在執(zhí)行一個(gè)查詢過(guò)程中忽然想到語(yǔ)句要改一下,于是就點(diǎn)擊了“取消執(zhí)行查詢”按鈕,結(jié)果數(shù)據(jù)庫(kù)名稱變?yōu)榱恕皵?shù)據(jù)庫(kù)名稱(可疑)”,并且無(wú)法打開(kāi)數(shù)據(jù)庫(kù),這可嚇壞了!
經(jīng)過(guò)搜索,發(fā)現(xiàn)有前人已給出了解決方法,逐步按照?qǐng)?zhí)行后又可以正常使用了,現(xiàn)將該方法分享給大家:
1、首先修改數(shù)據(jù)庫(kù)為緊急模式
ALTER DATABASE 數(shù)據(jù)庫(kù)名稱 SET EMERGENCY
2、使數(shù)據(jù)庫(kù)變?yōu)閱斡脩裟J?/p>
ALTER DATABASE 數(shù)據(jù)庫(kù)名稱 SET SINGLE_USER
3、修復(fù)數(shù)據(jù)庫(kù)日志重新生成,此命令檢查的分配,結(jié)構(gòu),邏輯完整性和所有數(shù)據(jù)庫(kù)中的對(duì)象錯(cuò)誤。當(dāng)您指定“REPAIR_ALLOW_DATA_LOSS”作為DBCC CHECKDB命令參數(shù),該程序?qū)z查和修復(fù)報(bào)告的錯(cuò)誤。但是,這些修復(fù)可能會(huì)導(dǎo)致一些數(shù)據(jù)丟失。
DBCC CheckDB (數(shù)據(jù)庫(kù)名稱, REPAIR_ALLOW_DATA_LOSS)
此過(guò)程中可能會(huì)出現(xiàn)許多錯(cuò)誤提示,同時(shí)也會(huì)丟失一些數(shù)據(jù)。
4、使數(shù)據(jù)庫(kù)變回為多用戶模式
ALTER DATABASE 數(shù)據(jù)庫(kù)名稱SET MULTI_USER
5、停止并重啟mssqlserver服務(wù)
下一篇:MySQL 數(shù)據(jù)庫(kù)“十宗罪”(十大經(jīng)典錯(cuò)誤案例)