ITPUB论坛-中国专业的IT技术社区

 找回密码
 注册
查看: 13660|回复: 17

[精华] 如何将置疑的数据库恢复啊?急

[复制链接]
论坛徽章:
0
跳转到指定楼层
1#
发表于 2002-8-13 14:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
数据库在访问时,突然掉电,后重启数据库出现一个数据库置,其后按help里的做,却没有用?请高手指导。
论坛徽章:
7
授权会员
日期:2005-10-30 17:05:33ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:442010新春纪念徽章
日期:2010-01-04 08:33:08ITPUB9周年纪念徽章
日期:2010-10-08 09:28:512013年新春福章
日期:2013-02-25 14:51:242015年新春福章
日期:2015-03-04 14:19:112015年新春福章
日期:2015-03-06 11:57:31
2#
发表于 2002-8-13 15:01 | 只看该作者
sp_resetstatus?

使用道具 举报

回复
论坛徽章:
0
3#
发表于 2002-8-13 16:41 | 只看该作者
Use Master
Go
sp_configure 'allow updates', 1
reconfigure with override
Go
然后
update sysdatabases set status = 28 where name = '<db_name>'
然后把数据倒出来

使用道具 举报

回复
论坛徽章:
3
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
4#
发表于 2002-8-13 16:56 | 只看该作者

Try it with this

Firstly look in <sql>\LOG and look at all recent errorlog(s).  There WILL be an indication here as to why the database has been marked suspect.  You need to fix whatever the problem is first (i.e. missing file, permissions problem, hardware error etc.)

Then, when the problem has been fixed and you're either sure that the data is going to be ok, or you have no backup anyway, so you've nothing to lose, then change the database status to normal and restart SQL Server.  To change the database status, and to get more information on recovery, look up the sp_resetstatus sp in the Books Online.

If you don't have access to sp_resetstatus information, then the short version of this is :-

UPDATE master..sysdatabases SET status = status^256 WHERE name = <dbname>

If the database still goes back into suspect mode, and you can't fix the original problem, and you have no recent backup, then you can get information out of the database by putting it into emergency mode.  If you do this, extract the data/objects out with BCP/Transfer Manager and then rebuild the database.  Note that the data may be corrupt or transactionally inconsistent.

Issue the following command to put the database into emergency mode (you'll need to allow updates first)

        UPDATE master..sysdatabases SET status=-32768 WHERE name='<dbname>'

使用道具 举报

回复
论坛徽章:
0
5#
 楼主| 发表于 2002-8-13 22:57 | 只看该作者

楼上的朋友

我按你的步聚去做后,置疑的字样去掉了,但是还是不能访问数据库,提示日志文件中有不可恢复的错误,请高手指教。

使用道具 举报

回复
论坛徽章:
20
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:18马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:11:18
6#
发表于 2002-8-14 10:42 | 只看该作者
你的数据库是否有合适的backup,如果允许丢失一部分数据的话可以考虑不完全恢复.
根据你的具体错误号,看一下dbcc 的相关命令,或者去sqlmag上找一下.

使用道具 举报

回复
论坛徽章:
5
授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:342010新春纪念徽章
日期:2010-03-01 11:20:52ITPUB 11周年纪念徽章
日期:2012-10-09 18:03:32沸羊羊
日期:2015-06-11 20:31:50
7#
发表于 2002-8-15 01:17 | 只看该作者
I have same problem before. It's no use to reset db_status for this case.

If 提示日志文件中有不可恢复的错误,
The only way is,
Try restore last full backup, then apply trans-logs.

使用道具 举报

回复
论坛徽章:
3
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
8#
发表于 2002-8-15 08:57 | 只看该作者

启动数据库将库分离,然后挂回去

用 /T3608参数。

绝妙的参数

使用道具 举报

回复
论坛徽章:
3
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
9#
发表于 2002-8-15 14:16 | 只看该作者
現象原因:
因為斷電或者磁碟機沒有可用空間而使 SQL Server 無法完成復原資料庫SQL Server會設定 sysdatabases 的 status 資料行為疑問狀態,所以需要手動更改sysdatabases的status字段.

方法:
先執行:
USE master
GO
sp_configure 'allow updates', 1
GO
RECONFIGURE WITH OVERRIDE
GO
使系統表可寫

然後執行:
UPDATE master.dbo.sysdatabases SET status = status ^ 256
         WHERE name = 你的數據庫名

或者
sp_resetstatus 你的數據庫名

最後執行:
sp_configure 'allow updates', 0
GO
RECONFIGURE WITH OVERRIDE
GO

即可.

使用道具 举报

回复
论坛徽章:
2
网络板块每日发贴之星
日期:2005-07-04 01:02:03授权会员
日期:2005-10-30 17:05:33
10#
发表于 2004-9-24 15:29 | 只看该作者

Re: 启动数据库将库分离,然后挂回去

你说的参数是 Startup Parameters?

最初由 ss0229 发布
[B]用 /T3608参数。

绝妙的参数 [/B]

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 虎吧 老博客 知识索引树 读书频道 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛 | SAP ERP系统
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表
http://www.vxiaotou.com