数据库附加失败,提示3456错误

博客介绍了SQL Server数据库附加和置疑问题的解决方法。解决附加问题需新建同名数据库,停掉SQL Server,用原数据文件覆盖新建数据库,重启后会出现置疑。解决置疑问题要逐句执行特定语句,需将语句中的database_name替换为实际置疑库名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解决附加问题

1.新建一个同名的数据库(数据文件与原来的要一致)
2.再停掉sql server(注意不要分离数据库)
3.用原数据库的数据文件覆盖掉这个新建的数据库
4.再重启sql server
5.此时打开企业管理器时会出现置疑,先不管

解决置疑问题

*执行语句时,一句一句执行,不要一次执行~~
注意:将下文的database_name 替换成实际的置疑库名

/*
**经常碰到客户的数据库由于操作不当,比如未关机断电,或者病毒恶意软件等造成的数据库损坏,
**使得系统宕机,生产暂停,造成巨大的影响与损失,下面分享一个修复方法。
**备注:数据库修复方法不能保证数据不丢失,如果数据非常重要,
**请寻找专业数据库恢复公司进行恢复,可以尽量减少数据的丢失。
*/

--1.将可疑、置疑的数据库修改为紧急状态,注意执行时要选择Master或者其他的数据库;

ALTER DATABASE [database_name] SET EMERGENCY 


--2.在执行完上面的语句后,[database_name]这个数据库就会变成红色紧急状态,
--这个时候一般就已经可以看到数据库的结构,查看到数据库的表等数据,接下来就要对数据库进行一些修复操作了


ALTER DATABASE database_name SET SINGLE_USER  ----修改数据库为单用户模式 
go

DBCC CheckDB (database_name,REPAIR_ALLOW_DATA_LOSS)   ----修复数据库 
go

DBCC CheckDB (database_name,REPAIR_REBUILD)  ----重建 
go

ALTER DATABASE database_name SET MULTI_USER   ----恢复多用户 
go

--3.在执行完上面的语句之后,一般数据库就恢复了(刷新后显示正常),
--如果数据库还是显示红色的话就说明数据库还是在紧急状态,需要恢复成Online状态:

ALTER DATABASE database_name SET ONLINE

来源:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值