求助: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)

如图:
...全文
832 1 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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)
回复
相关推荐
发帖
新技术前沿
创建于2007-09-28

6126

社区成员

MS-SQL Server 新技术前沿
申请成为版主
帖子事件
创建了帖子
2012-07-12 02:54
社区公告
暂无公告