位置: 编程技术 - 正文

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错误和使用情况报告)

  • 从香港向境外汇款怎么汇
  • 增值税发票综合服务平台错误代码35
  • 小规模纳税人认定的最新标准2022
  • 高新企业做亏损分析
  • 车间加班视频
  • 车辆审验费的会计分录
  • 律师事务所的账务流程
  • 一般纳税人不开票收入怎么填增值税申报表
  • 增值税发票退票时间
  • 软件维护费入什么科目
  • 小规模不动产租赁税率是否减按1%
  • 合并报表的少数股东权益分录
  • 城建附加减半征收文件
  • linux |bc
  • 不良资产购买流程
  • 科技服务业是怎么分类的
  • 超级本能加装硬盘吗
  • 代收代付的垃圾清运费没发票能入账吗
  • PHP:pg_escape_literal()的用法_PostgreSQL函数
  • 增值税免征与即征的区别
  • php排行
  • 小规模附加税费
  • php批量删除操作记录
  • 基于javaweb是什么意思
  • axios请求数据的数据类型
  • 共享主机和vps
  • thinkphp自定义标签
  • 转让旧机器的会计分录
  • 收到的免税苗木发票必须当月抵扣么
  • 应交税费中应交企业所得税为负数怎么调报表
  • 当月银行账可以下个月做吗
  • mysql5.7字符集
  • 投标报名费怎么做分录
  • 流动资产比例大说明什么
  • 计提工会经费是什么工资项目
  • 异地预缴税款多交了有影响吗
  • 属于原始凭证的有( )
  • 公司开发新产品时,由管理层任命的
  • 采购暂估业务处理流程
  • 退休人员的返聘合同
  • 将本月应交未交增值税转入未交增值税
  • 检测费用的会计分录
  • 制造企业费用会计
  • 咨询服务费如何合理避税
  • 利润表增加,资产负债表减少怎么回事
  • 企业内账怎么做
  • 会计凭证发票粘贴
  • sql语句执行顺序怎么写
  • MySQL 5.7.18 release版安装指南(含有bin文件版本)
  • fedora系统安装教程
  • windows怎么查
  • mac怎么设置默认打开方式
  • linuxsu命令作用
  • dotnetfx35有什么用
  • win 驱动
  • WIN764位系统8G内存识别一半解决办法
  • win7thin
  • linux 怎么样
  • 下载的mt4安装成了mt5
  • EXTJS记事本 当CompositeField遇上RowEditor
  • javascript居中
  • python 单例
  • 关于博客说法错误的是
  • 用户允许控制
  • css checked
  • linux删除文件语句
  • python怎么多进程
  • 焦点问题是什么
  • unity如何导出vr项目
  • js设置图片大小
  • 整理Javascript事件响应学习笔记
  • android 多页面
  • 电子发票查询系统手机查询
  • 税务工会费缴费标准
  • 电子税务完税证明怎么打印
  • 江苏国家税务局电子税务局电话
  • 开错发票怎么投诉?
  • 福建通用定额发票查询
  • 新疆税务干部学校招聘
  • 税控盘开票怎么赋码的教程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设