求助:sql server2008R2 只有数据库主文件mdf附加数据库

awanke 2012-07-12 02:54:48
求助:sql server2008R2 只有数据库主文件mdf附加数据库
详细:我用mdf和ldf附加数据库提示错误:
传递给数据库 'srsuperMarket' 中的日志扫描操作的日志扫描号 (342:2634:1) 无效。此错误可能指示数据损坏,或者日志文件(.ldf)与数据文件(.mdf)不匹配。如果此错误是在复制期间出现的,请重新创建发布。否则,如果该问题导致启动期间出错,请从备份还原。
无法打开新数据库 'srsuperMarket'。CREATE DATABASE 中止。 (.Net SqlClient Data Provider)

如图:
...全文
1036 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
i6first 2013-01-13
  • 打赏
  • 举报
回复
两种方法: 方法一: USE [master] GO EXEC sp_attach_single_file_db @dbname='dotnet_erp25_szrp_cbgk', @physname=N'D:\backup_log\dotnet_erp25_szrp_cbgk.mdf' 方法二: USE [master] CREATE DATABASE dotnet_erp25_szrp_cbgk ON (FILENAME = N'D:\backup_log\dotnet_erp25_szrp_cbgk.mdf') FOR ATTACH_REBUILD_LOG GO
KevinLiu 2012-09-15
  • 打赏
  • 举报
回复
FOR ATTACH_REBUILD_LOG requires the following:

A clean shutdown of the database.

All data files (MDF and NDF) must be available.

所以发生问题的时候数据库还有日志没有完成,使用ATTACH_REBUILD_LOG 会失败。

References:http://msdn.microsoft.com/zh-cn/library/ms176061.aspx
guguda2008 2012-08-09
  • 打赏
  • 举报
回复
用CREATE DATABASE WITH ATTACH_REBUILD_LOG试试
KevinLiu 2012-08-09
  • 打赏
  • 举报
回复
可以直接用MDF,参考:http://blog.csdn.net/smithliu328/article/details/7839526
--小F-- 2012-07-13
  • 打赏
  • 举报
回复
你这个难了 应该是MDF文件损坏了。
awanke 2012-07-12
  • 打赏
  • 举报
回复
如果只用Mdf文件附加数据库,则提示如下的错误:
无法打开新数据库 'srsuperMarket'。CREATE DATABASE 中止。
文件激活失败。物理文件名称'D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\srsuperMarket_log.ldf'可能不正确。
无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。如果事务日志文件被手动删除或者由于硬件或环境问题而丢失,则可能出现此错误。 (.Net SqlClient Data Provider)

6,128

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 新技术前沿
社区管理员
  • 新技术前沿社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧