位置: 编程技术 - 正文

SQL Server误区30日谈 第24天 26个有关还原(Restore)的误区(sqlserver1053怎么解决)

编辑:rootadmin
本系列文章一直所没有触及的就是有关”还原(Restore)”的话题,因为一旦牵扯到这个话题就会涉及大量的误区,多到我无法通过一篇文章说完的地步。事实上,我希望用字母表的顺序为每一个误区进行编号,希望你看了不要昏昏欲睡。下面开始揭穿这个误区。误区 #: 个有关还原(Restore)的误区都是错误的 a)可以通过WITH STOPAT参数在完整备份和差异备份的基础上还原到特定时间点当然不能。虽然这个语法看上去貌似能的样子,但这个语法的最佳实践是你在进行日志还原到特定时间点时带上,这样你的还原就不会超过这个时间点(译者注:比如说还原的第一个日志备份中不包含这个时间点,但你带上这个参数则这个日志备份会被全部还原,直到你还原到包含时间点的日志备份而不用担心还原过头),对此我之前的一篇文章会更有帮助:Debunking a couple of myths around full database backups。 b)使用了WITH CONTINUE_AFTER_ERROR选项之后还可以按照既定的还原顺序进行还原错误。如果你的备份集有损坏而不得不使用这个选项,那么你的还原顺序将会不复存在。当进行日志还原时日志损坏,那么使用这个选项之前就需要三思而后行,因为这很有可能造成数据不一致的问题。在最坏的情况下会造成数据库中结构被破坏,我不推荐使用这个选项。 c)可以将数据库的一部分还原到特定时间点不能,数据库的每个部分都需要和主文件组时间点一致,否则就无法上线。当然只读文件组除外。 d)可以将不同数据库的不同文件组还原到一个新的数据库中不能,每个数据库的文件头页(译者注:也就是页号为0的页)都有一个GUID,除非这个GUID和另外数据库的GUID一致才能还原(这当然不可能)。 e)还原可以去除索引碎片(或是更新统计信息等等)不能,你备份的是什么还原的就是什么,我之前的一篇文章对此有更详细的解释:blog post over on our SQL Server Magazine Q&A blog。 f)在还原的过程中可以进行数据库收缩不能,虽然大家都需要这个功能,在开发环境下恢复一个大部分是空的备份集时这就十分有用。但就是不能。 g)可以将数据库还原到任何更低版本的实例不能,这是一个普遍存在的误区。低版本的实例对于高版本的数据库的部分内容有可能无法理解(比如sql server 的数据库就无法理解SQL Server 数据库的一些内容)。 h)可以将数据库还原到任意版本的SQL Server中错误,比如说SQL Server ,一个含有表分区的数据库只能还原到企业版中。在SQL Server 只能还原到企业版的数据库包含了如下特性:分区,透明数据加密,CDC,数据压缩。有关这里我已经写过一篇文章,请看:SQL Server : Does my database contain Enterprise-only features?。 i)WITH STANDBY参数会破坏还原链不会,这个参数的作用是使得在还原的过程中,保证数据库事务级别的一致性。从还原顺序的角度来说,With Standby参数WITH NORECOVERY并无区别。你可以在还原的过程中停止N次。这也是事务日志传送的机制。经常有人会问在事务传送的辅助服务器进行日志恢复的过程是否能访问,至此你应该知道是可以只读访问的。同时,这个选项也可能造成一些诡异的问题,请看:Why could restoring a log-shipping log backup be slow?。 j)如果备份数据库的服务器没有开启即时文件初始化选项,那么恢复的服务器就不能利用这个特性是否能进行即时文件初始化完全取决于被还原的服务器受否开启这个特性。备份集中不会含有任何有关这点的信息。更详细的内容请看:SQL Server误区日谈-Day3-即时文件初始化特性可以在SQL Server中开启和关闭。 k)还原是从损坏中恢复的最佳办法不是,并不完全是。这要取决于你有的备份类型。如果损坏的数据比较多,那么利用还原是一个不错的主意,但如果损失的数据比较少并允许一些数据损失的情况下,亦或是由事务日志传送的辅助服务器回传一些日志的情况下,那么downtime就会少很多。最佳办法就是在可接受的数据损失范围内,在尽量少的downtime修复损坏。 l)在开始还原之后还可以备份尾端日志不允许,一旦你开始还原之后,就不再允许备份尾端日志。所以当灾难发生之后,第一件事永远都是查看是否需要备份尾端日志。 m)你可以还原到在备份的日志范围之内的任何时间点这是不对的。如果日志中包含了那些那些仅仅少量日志的操作(比如批量数据导入操作),这类操作具有原子性,要么全部还原,要么不还原。这是由于这类操作对于区的进行了修改,但备份集中并没记录何时修改了这些区。你可以通过如下脚本查看日志备份包含的信息量:New script: how much data will the next log backup include?。 n)只要备份成功,就可以利用这个备份集进行还原No,no,no。备份集只是存储在IO子系统的文件,就和数据库的文件一样。它也有损坏的可能。你需要定期检查备份是否被损坏,否则当灾难发生后的惊喜怕你是承受不了。请看:Importance of validating backups。另外一点需要注意的是避免额外的完整备份破坏恢复顺序,这个例子或许会给你一点警示:BACKUP WITH COPY_ONLY - how to avoid breaking the backup chain。 o)所有的SQL Server页类型都可以通过单页恢复进行还原不,一些分配位图的页(译者注:比如GAM,SGMA,FPS页等)不能通过进行单页还原(这类页可以通过SQL Server 的镜像进行自动页修复)。详情你可以看我这篇文章:Search Engine Q&A #: Can all page types be single-page restored?。 p)RESTORE ... WITH VERIFYONLY选项会验证整个备份集不,这个选项仅仅检查备份的头是否正确。只有使用WITH CHECKSUM才可以完整备份集的校验和检查。 q)可以在不还原证书的情况下,还原被透明数据加密的数据库不能,对于透明数据加密最重要的一点要记住,证书丢了意味着整个数据库就没了。 r)当还原过程完成后,还原会进行Redo和Undo每次还原操作后其实执行的都是Redo操作,只有在整个还原过程完成后,才会进行Undo。 s)压缩备份集只能被还原到SQL Server 企业版中不,所有的版本都能还原压缩后的备份。从SQL Server R2开始,标准版也可以进行压缩备份。 t)将低版本的数据库还原到高版本的实例可以跳过升级过程不允许,在数据还原和附加的过程中是不允许跳过必须的升级和恢复过程。 u)在位实例下备份的数据库无法恢复到位实例。反之亦然错误,数据库的内部格式和CPU构架无关。 v)只要进行数据还原,就可以保证程序正常执行不对,就像高可用性中的镜像故障转移和事务日志传送转移到辅助服务器一样,还有很多额外的步骤需要做才能保证程序正常执行。包括辅助数据库和正确的登录名等。 w)还原受损的文件需要从多个文件组进行还原,则必须还原相关的所有文件组不,在SQL Server 中的确是这样,但在SQL Server 以后的版本就完全不用了。 x)你可以将数据库还原到任何最新版本的实例不对,数据库只能还原到比其新的一个或两个版本.(比如SQL Server 7.0下的数据库就不能还原到SQL Server )。 y)恢复时间和还原时间是一样的不,很多因素会影响还原的时间,比如说是否有长事务需要回滚,或是即时文件初始化特性是否开启。 z)在还原数据库之前需要先Drop被还原的数据库不是的,如果你在还原数据库之前Drop被还原的数据库,那么还原过程首先需要即时文件初始化,还有,你最好保留被还原数据库的副本以便还原失败的情况下把损失减到最小。

推荐整理分享SQL Server误区30日谈 第24天 26个有关还原(Restore)的误区(sqlserver1053怎么解决),希望有所帮助,仅作参考,欢迎阅读内容。

SQL Server误区30日谈 第24天 26个有关还原(Restore)的误区(sqlserver1053怎么解决)

文章相关热门搜索词:sqlserver1053怎么解决,sql server常规错误,sql server 错误,sql server 1222解决,sql server错误和使用情况报告,sql server 1222解决,sql server233错误,sql语句错误提示,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL Server误区日谈 第天 有关填充因子的误区 误区#:多个有关填充因子的误区都是错误的a)填充因子是一直存在的不是的,通过BooksOnline可以看到(译者:我在新版的BOL没有找到这句话):重要:填充

SQL Server误区日谈 第天 SQL Server中存在真正的“事务嵌套” 误区#:SQLServer中存在真正的事务嵌套错误嵌套事务可不会像其语法表现的那样看起来允许事务嵌套。我真不知道为什么有人会这样写代码,我唯一能够

SQL Server误区日谈 第天 使用BACKUP WITH CHECKSUM可以替代DBCC CheckDB 误区#:使用BACKUP...WITHCHECKSUM可以替代DBCCCheckDB错误乍一看,由于BACKUPWITHCHECKSUM会检测所有分配出去的页的校验和的值,这个误区貌似是这么回事,但实

标签: sqlserver1053怎么解决

本文链接地址:https://www.jiuchutong.com/biancheng/347839.html 转载请保留说明!

上一篇:SQL Server误区30日谈 第23天 有关锁升级的误区(sql server 3417错误)

下一篇:SQL Server误区30日谈 第25天 有关填充因子的误区(sql server错误和使用情况报告)

  • 印花税缴纳方式一经选择1年之内不得修改
  • 小区业委会是否可以进行经营活动?
  • 现金预算属于营业预算吗
  • 普票加专票超过30万全交税吗2020
  • 免税苗木普通发票
  • 打印的电子发票需要盖章么
  • 企业有利润要交什么税
  • 超市卡发票可以抵扣吗
  • 资本公积转增股本个人所得税
  • 信息技术服务企业研发费用加计扣除
  • 企业接受赠予企业固定资产是否免税
  • 小规模建筑业如何做账
  • 税务注销后还能稽查吗
  • 发票中奖要交税吗
  • 股东实物分红账务怎么做
  • 怎么处理未抵扣增值税形成的留抵税额?
  • 当月商品已出库货款未收到怎么做分录?
  • 未交增值税怎么记账
  • 定期存款要交利息税吗
  • 没领税票会产生税吗
  • 收不到租金怎么解除合同
  • 失去胜诉权但又有起诉权是什么意思
  • 冲红发票开错了怎么办
  • 印花税退费
  • 美容店销售收入怎么算
  • 0xc000007b应用程序无法正常启动win11
  • PHP:oci_set_action()的用法_Oracle函数
  • php curl header参数
  • php floor()
  • php文件合并
  • 金银首饰零售业税负率是多少
  • php array_reverse 以相反的顺序返回数组实例代码
  • 邓弗里斯什么水平
  • 对抗生成网络算法
  • 图像去噪的原理
  • php 重写 重载
  • css媒体查询不起作用
  • 金融资产减值的三个阶段
  • 怎么样确认
  • 个体户税率征收
  • 施工项目的费用包括
  • 营改增后工程分包财务
  • python requests读取服务器响应
  • php算法有哪些
  • 织梦怎么样
  • 出售其他债权投资产生的收益为什么计入留存收益
  • 财务做帐的金额怎么算
  • 个税申报可以去税务局吗
  • 职工社会保险费是什么意思
  • 工程在建期间的招待费计入什么科目
  • 行政事业单位核销固定资产的账务处理
  • 公司购买一辆小型货车
  • 建筑工程审计流程
  • 营改增后建筑劳务分包开票一般几个点
  • 赠送给客户的产品怎么做账
  • 盘亏的固定资产是资产吗
  • 应收账款周转率范围多少合适
  • 赔偿给别人的钱还能要回来吗
  • 应付账款暂估会计分录怎么写
  • 单位固定资产统计表
  • sqlserver如何查询表数据
  • MySQL 5.7.18 release版安装指南(含有bin文件版本)
  • ubuntu笔记软件
  • linux如何拨号
  • 如何解决windows无法访问指定设备
  • 360修复漏洞补丁一直下载
  • 外国电影怎么看双语的
  • win7关闭uac是什么意思
  • win8.1玩游戏好不好
  • linux系统ll
  • Unity3D & Java 基于 Protobuf 通信实现
  • 如何限制用户只能使用
  • Android Error: No resource found ··· 'layout_above' with value '@id/···
  • python-flask
  • android长按app快捷功能
  • nodejs实例教程
  • jQuery添加类名
  • 金银首饰以旧换新业务按销售方实际
  • 金蝶EAS固定资产变更
  • 乌鲁木齐市公立幼儿园有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设