仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1431|回复: 8
打印 上一主题 下一主题

[学习教程] MSSQL编程:sqlserver2005没有log日记文件时恢单数...

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:16:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Federated将不同的Mysql服务器联合起来,逻辑上组成一个完整的数据库。非常适合分布式应用SQLServer2005数据库日记文件破坏的情形下怎样恢单数据库呢?上面我们来具体剖析...在某些偶尔的情形下,
会引发SQLServer2005数据库日记文件的破坏,好比:硬件妨碍、盘算机非一般重启或关机。
当SQLServer2005数据库日记文件破坏时,大概会呈现以下情形:
1、在SQLServerManagementStudio中显现数据库处于置疑(suspect)形态。
2、事务日记大概会呈现以下毛病信息:
Couldnotredologrecord(21737:686:9),fortransactionID(0:2334886),onpage
(1:37527),databaseTest(databaseID15).Page:LSN=(21735:299:5),type=2.Log:
OpCode=3,context19,PrevPageLSN:(21737:615:1).Restorefromabackupofthe
database,orrepairthedatabase.
DuringredoingofaloggedoperationindatabaseTest,anerroroccurredatlog
recordID(76116:286:2).Typically,thespecificfailureispreviouslyloggedasanerror
intheWindowsEventLogservice.Restorethedatabasefromafullbackup,orrepairthe
database.
3、没法分别数据库
4、用CREATEDATABASEDBNameON(FILENAME=NDBFile)FORATTACH_REBUILD_LOG附加数据库
时呈现提醒:Thelogcannotberebuiltbecausethedatabasewasnotcleanlyshutdown.
恢复办法:
1、中断数据库服务。
2、将必要恢复的数据库文件复制到别的的地位。
3、启动数据库服务。
4、确认要恢复的数据库文件已乐成复制到别的的地位,然后在SQLServerManagementStudio中删
除要恢复的数据库。
5、新建同名的数据库(数据库文件名也要不异)。
6、中断数据库服务。
7、用第2步中备份的.mdf文件掩盖新数据库的同名文件。
8、启动数据库服务。
9、运转alterdatabasedbnamesetemergency,将数据库设置为emergencymode
10、运转上面的命令就能够恢单数据库:
usemaster

declare@databasenamevarchar(255)
set@databasename=要恢复的数据库称号
execsp_dboption@databasename,Nsingle,Ntrue--将方针数据库置为单用户形态
dbcccheckdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
dbcccheckdb(@databasename,REPAIR_REBUILD)
execsp_dboption@databasename,Nsingle,Nfalse--将方针数据库置为多用户形态
下面的办法是经由过程.mdf文件恢单数据库,即便log文件丧失也能够恢复。
由MySQL用来存储数据的文件格式以已经被广泛地测试过,但是总是有外部情况可以导致数据库表被破坏:
莫相离 该用户已被删除
沙发
发表于 2015-1-19 06:28:20 | 只看该作者
一个是把SQL语句写到客户端,可以使用DataSet进行加工;
若相依 该用户已被删除
板凳
发表于 2015-1-28 05:16:33 | 只看该作者
记得在最开始使用2k的时候就要用到这个功能,可惜2k没有,现在有了作解决方案的朋友会很高兴吧。
深爱那片海 该用户已被删除
地板
发表于 2015-2-5 16:57:39 | 只看该作者
SP4包括用于以下SQLServer2000组件的程序包:Database组件(下载文件:SQL2000-KB884525-SP4-x86.EXE)更新SQLServer2000的32位Database组件,包括数据库引擎、复制、客户端连接组件及工具。有关其他信息,请参阅ReadmeSql2k32Sp4.htm。AnalysisServices组件(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE)更新SQLServer2000的32位AnalysisServices。
简单生活 该用户已被删除
5#
发表于 2015-2-13 01:45:36 | 只看该作者
你可以简单地认为适合的就是好,不适合就是不好。
6#
发表于 2015-3-3 12:41:08 | 只看该作者
数据库物理框架没有变动undo和redo都放在数据库得transaction中,个人感觉是个败笔。如果说我们在设计数据库的时候考虑分多个数据库,可能能在一定程度上避免I/O效率问题。
再现理想 该用户已被删除
7#
发表于 2015-3-11 11:14:07 | 只看该作者
很多书籍啊,不过个人认为看书太慢,还不如自己学。多做实际的东西,就会遇到很多问题,网上搜下解决问题。不断重复这个过程,在配合sql的F1功能。
精灵巫婆 该用户已被删除
8#
发表于 2015-3-18 14:10:20 | 只看该作者
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
因胸联盟 该用户已被删除
9#
发表于 2015-3-26 04:47:37 | 只看该作者
如果处理少量数据,比如几百条记录的数据,我不知道这两种情况哪个效率更高,如果处理大量数据呢?比如有表中有20万条记录.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 21:52

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表