CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  疑难问题

问一个傻傻的问题?

楼主kathycsl(MM)2006-03-03 11:39:43 在 MS-SQL Server / 疑难问题 提问

数据库的test_db.mdf文件存在,test_dt.ldf文件没有了能恢复数据库吗? 问题点数:20、回复次数:9Top

1 楼wgsasd311(自强不息)回复于 2006-03-03 11:45:33 得分 2

可以,通过附加数据库Top

2 楼libin_ftsafe(子陌红尘:TS for Banking Card)回复于 2006-03-03 11:46:25 得分 12

备份数据文件,然后按下面的步骤处理:  
   
  1.新建一个同名的数据库(数据文件与原来的要一致)  
   
  2.再停掉sql   server(注意不要分离数据库)  
   
  3.用原数据库的数据文件覆盖掉这个新建的数据库  
   
  4.再重启sql   server  
   
  5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)  
   
  USE   MASTER  
  GO  
   
  SP_CONFIGURE   'ALLOW   UPDATES',1   RECONFIGURE   WITH   OVERRIDE  
  GO  
   
  UPDATE   SYSDATABASES   SET   STATUS   =32768   WHERE   NAME='置疑的数据库名'  
  Go  
   
  sp_dboption   '置疑的数据库名',   'single   user',   'true'  
  Go  
   
  DBCC   CHECKDB('置疑的数据库名')    
  Go  
   
  update   sysdatabases   set   status   =28   where   name='置疑的数据库名'  
  Go  
   
  sp_configure   'allow   updates',   0   reconfigure   with   override  
  Go    
   
  sp_dboption   '置疑的数据库名',   'single   user',   'false'  
  Go  
   
   
  6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用  
  数据库的脚本创建一个新的数据库,并将数据导进去就行了.  
  Top

3 楼kathycsl(MM)回复于 2006-03-03 13:24:02 得分 0

请问libin_ftsafe(子陌红尘):以上那段代码是放在查询分析器里面运行吗?当前数据库为master,  
  我试了一下会出错:  
  “DBCC   执行完毕。如果   DBCC   输出了错误信息,请与系统管理员联系。  
  已将配置选项   'allow   updates'   从   0   改为   1。请运行   RECONFIGURE   语句以安装。  
   
  (所影响的行数为   1   行)  
   
  服务器:   消息   3908,级别   16,状态   1,行   2  
  未能在数据库   'DesDB'   中运行   BEGIN   TRANSACTION,因为该数据库处于回避恢复模式。  
   
  (所影响的行数为   1   行)  
   
  DBCC   执行完毕。如果   DBCC   输出了错误信息,请与系统管理员联系。  
  已将配置选项   'allow   updates'   从   1   改为   0。请运行   RECONFIGURE   语句以安装。”  
  这是什么原因,前面的做法是按你说的方法做的。  
  Top

4 楼wgsasd311(自强不息)回复于 2006-03-03 13:27:35 得分 2

了子陌红尘的方法不适合楼主,楼主直觉用附加数据库就OKTop

5 楼wgsasd311(自强不息)回复于 2006-03-03 13:29:13 得分 2

--附加数据库  
  sp_attach_db   'newdbname','path\test_db.mdf'Top

6 楼kathycsl(MM)回复于 2006-03-03 13:37:01 得分 0

sp_attach_db   'DesDB','C:\Program   Files\Microsoft   SQL   Server\MSSQL\DesDB_Data.MDF'  
  这样执行也会有错的。  
   
  服务器:   消息   1813,级别   16,状态   2,行   1  
  未能打开新数据库   'DesDB'。CREATE   DATABASE   将终止。  
  设备激活错误。物理文件名   'C:\Program   Files\Microsoft   SQL   Server\MSSQL\data\DesDB_Log.LDF'   可能有误。Top

7 楼kathycsl(MM)回复于 2006-03-03 13:39:01 得分 0

好像DesDB_Data.MDF这个文件不是分离出来的是不能直接附加的,而且DesDB_Log.LDF这个文件已经不存在了。  
  Top

8 楼wgsasd311(自强不息)回复于 2006-03-03 14:37:08 得分 2

如不是分离出来的,用附加肯定会失败,试试用还原方法.Top

9 楼kathycsl(MM)回复于 2006-03-03 14:53:08 得分 0

哈哈,我按libin_ftsafe(子陌红尘):的方法又执行了一遍,问题解决了,谢谢!!Top

相关问题

  • 问!!!
  • 问!
  • 问::
  • 问:
  • 问!
  • 问?????
  • 问!!!!!!!
  • 问?
  • 问!!!!!!!!!!
  • 问

关键词

  • 数据库
  • 文件
  • 语句
  • 执行
  • 数据
  • db
  • desdb
  • 置疑
  • reconfigure
  • mdf

得分解答快速导航

  • 帖主:kathycsl
  • wgsasd311
  • libin_ftsafe
  • wgsasd311
  • wgsasd311
  • wgsasd311

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo