附加SQL2005数据库失败解决方法
来源:互联网 发布:棋牌源码哪个好 编辑:程序博客网 时间:2024/05/22 02:28
参考恢复方法:
1、停止数据库服务。
2、将需要恢复的数据库文件复制到另外的位置。
3、启动数据库服务。
4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
5、新建同名的数据库(数据库文件名也要相同)。
6、停止数据库服务。
7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。
8、启动数据库服务。
9、运行alter database dbname set emergency,将数据库设置为emergency mode
10、运行下面的命令就可以恢复数据库:
use master
declare @databasename varchar(255)
set @databasename='你的数据库名'
exec sp_dboption @databasename, N'single', N'true'--将目标数据库置为单用户状态
dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb(@databasename,REPAIR_REBUILD)
exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态
----------------------------------------------------------------------------------------------------------
如果你一切都顺得的话就如上的步骤就可以成功了,下面我们将对特殊的状态进行分析
----------------------------------------------------------------------------------------------------------
1、一个或多个文件与数据库的主文件不匹配。如果是尝试附加数据库,请使用正确的文件重试该操作。如果这是现有数据库,则文件可能已损坏,应该从备份进行还原。
日志文件 'E:/Program Files/Microsoft SQL Server 2005/MSSQL.1/MSSQL/DATA/dnt2_db_log.ldf' 与主文件不匹配。该文件可能来自另一数据库,或者可能以前重新生成了日志。
消息 5123,级别 16,状态 1,第 5 行
尝试打开或创建物理文件 'F:/项目/爱社区/数据库/dnt2_db_log.ldf' 时,CREATE FILE 遇到操作系统错误 3(系统找不到指定的路径。)。
消息 5024,级别 16,状态 2,第 5 行
在 sysfiles1 中找不到主日志文件所对应的条目。无法重建日志。
消息 5028,级别 16,状态 2,第 5 行
系统无法激活足够的数据库来重建日志。
解决方案:手动创建E:/Program Files/Microsoft SQL Server 2005/MSSQL.1/MSSQL/DATA目录就可以了,然后再执行
上述第10步步骤,就会在E:/Program Files/Microsoft SQL Server 2005/MSSQL.1/MSSQL/DATA产生一个日志文件。数据库就可以正常使用了
----------------------------------------------------------
2、另外值得说说的就是,如果该数据在备份时发生
System.Data.SqlClient.SqlError: 在处理 'BackupMetadata' 元数据(数据库 ID 6,文件 ID 65537)时出错。 (Microsoft.SqlServer.Smo),说明在附加过程中没有产生全文索引文件
解决方法:
右键数据库->属性->文件->选择使用全文索引
如果执行正常那么就可以直接进行备份操作了。
1、停止数据库服务。
2、将需要恢复的数据库文件复制到另外的位置。
3、启动数据库服务。
4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
5、新建同名的数据库(数据库文件名也要相同)。
6、停止数据库服务。
7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。
8、启动数据库服务。
9、运行alter database dbname set emergency,将数据库设置为emergency mode
10、运行下面的命令就可以恢复数据库:
use master
declare @databasename varchar(255)
set @databasename='你的数据库名'
exec sp_dboption @databasename, N'single', N'true'--将目标数据库置为单用户状态
dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb(@databasename,REPAIR_REBUILD)
exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态
----------------------------------------------------------------------------------------------------------
如果你一切都顺得的话就如上的步骤就可以成功了,下面我们将对特殊的状态进行分析
----------------------------------------------------------------------------------------------------------
1、一个或多个文件与数据库的主文件不匹配。如果是尝试附加数据库,请使用正确的文件重试该操作。如果这是现有数据库,则文件可能已损坏,应该从备份进行还原。
日志文件 'E:/Program Files/Microsoft SQL Server 2005/MSSQL.1/MSSQL/DATA/dnt2_db_log.ldf' 与主文件不匹配。该文件可能来自另一数据库,或者可能以前重新生成了日志。
消息 5123,级别 16,状态 1,第 5 行
尝试打开或创建物理文件 'F:/项目/爱社区/数据库/dnt2_db_log.ldf' 时,CREATE FILE 遇到操作系统错误 3(系统找不到指定的路径。)。
消息 5024,级别 16,状态 2,第 5 行
在 sysfiles1 中找不到主日志文件所对应的条目。无法重建日志。
消息 5028,级别 16,状态 2,第 5 行
系统无法激活足够的数据库来重建日志。
解决方案:手动创建E:/Program Files/Microsoft SQL Server 2005/MSSQL.1/MSSQL/DATA目录就可以了,然后再执行
上述第10步步骤,就会在E:/Program Files/Microsoft SQL Server 2005/MSSQL.1/MSSQL/DATA产生一个日志文件。数据库就可以正常使用了
----------------------------------------------------------
2、另外值得说说的就是,如果该数据在备份时发生
System.Data.SqlClient.SqlError: 在处理 'BackupMetadata' 元数据(数据库 ID 6,文件 ID 65537)时出错。 (Microsoft.SqlServer.Smo),说明在附加过程中没有产生全文索引文件
解决方法:
右键数据库->属性->文件->选择使用全文索引
如果执行正常那么就可以直接进行备份操作了。
0 0
- 附加SQL2005数据库失败解决方法
- SQL2005 数据库 附加失败
- Vista下sql2005附加数据库失败问题
- sql2005 附加数据库失败 错误 : 5120
- sql2005附加数据库失败 错误5120的解决办法
- sql2005附加数据库失败 错误5120的解决办法
- SQL2008附加数据库失败,错误5120解决方法
- sql2005 附加数据库
- SQL2005附加数据库问题
- SQL2005附加数据库"失败........无法更新数据库"xxx",因为数据库是只读
- --附加数据库失败
- 附加数据库失败
- 附加数据库失败
- 附加数据库失败解决办法
- SQLServer附加数据库失败
- 在sql2005中附加数据库时出现操作系统错误 5:"5(拒绝访问。) 解决方法
- C#附加SQL2005数据库详细代码
- C#附加SQL2005数据库详细代码
- 《CTCI》2.7 检查链表是否为回文
- 学习编程旅程开始
- AndrewNg - 线性回归【2】正规方程组
- 队列中取最大值操作问题
- 【设计模式】IO中使用到的设计模式
- 附加SQL2005数据库失败解决方法
- 西门子S7-200模拟量编程
- [BZOJ2946][Poi2000]公共串 && 后缀自动机
- Linux命令 whoami 和 who am i 的区别
- 文献管理
- awk命令学习总结
- [LeetCode]Department Highest Salary,解题报告
- https://technet.microsoft.com/zh-cn/library/hh220610(v=office.14).aspx
- 焊接机器人