• 误区30日谈21-24



    --误区#21: 数据库损坏可以通过重启 SQL Server或是Windows, 或是附加和分离数据库解决
    --答案:错误
    --解释:数据库损毁无任何操作可修复,但可以通过某些机制来修复页损坏 (还还原和镜像的页修复)
    --扩展:某些内存页的损坏和 IO系统的损坏,在不涉及到数据文件的情况下,可能通过重启来修复
    --http://www.cnblogs.com/CareySon/archive/2013/01/16/2863116.html


    --误区#22: 资源调控器可以调控 IO
    --答案:错误
    --解释: SQL SERVER 只能调控IO和 CPU
    --扩展:传说中SQL SERVER 2014可以调控 IO,WHO KNOW?
    --http://www.cnblogs.com/CareySon/archive/2013/01/17/2863985.html

    --误区#23: 锁升级的过程是由行锁升级到页锁,再由页锁升级到表锁
    --答案:错误
    --解释:所有的锁升级都会直接升级到表锁
    --扩展:对应表分区,如果 ALTER TABLE TB1 SET (LOCK_ESCALATION = AUTO),则锁升级时升级为分区锁,默认条件下 LOCK_ESCALATION为TABLE( 直接从行锁升级到表锁 )
    --修改LOCK_ESCALATION 需要谨慎测试

    --http://www.cnblogs.com/CareySon/archive/2013/01/17/2863986.html

    --24 a)可以通过WITH STOPAT 参数在完整备份和差异备份的基础上还原到特定时间点
    --答案: 错误
    --解释:该参数用在日志还原中,而完整备份和差异备份只包含少量日志且该日志只用于保持数据一致性
    --http://www.cnblogs.com/CareySon/archive/2013/01/18/2866428.html


    --24 b)使用了WITH CONTINUE_AFTER_ERROR 选项之后还可以按照既定的还原顺序进行还原
    --答案:错误
    --解释:如果你的备份集有损坏而不得不使用这个选项,那么你的还原顺序将会不复存在。当进行日志还原时日志损坏,那么使用这个选项之前就需要三思而后行,因为这很有可能造成数据不一致的问题。在最坏的情况下会造成数据库中结构被破坏,我不推荐使用这个选项。

    --24 c)可以将数据库的一部分还原到特定时间点
    --答案: 错误
    --解释:数据库的每个部分都需要和主文件组时间点一致,否则就无法上线。当然只读文件组除外。

    --24 d)可以将不同数据库的不同文件组还原到一个新的数据库中
    --答案: 错误
    --解释:无理由,不解释

    --24 e)还原可以去除索引碎片(或是更新统计信息等等)
    --答案:错误
    --解释:还原后的数据库和备份时的数据库一样


    --24 f)在还原的过程中可以进行数据库收缩
    --答案:错误
    --解释:备份时数据库多大,还原后就多大,要想还原数据库小,先收缩再备份


    --24 g)可以将数据库还原到任何更低版本的实例
    --答案:错误
    --解释:只能还原到高版本,不能还原到低版本

    --24 h)可以将数据库还原到任意版本的 SQL Server中
    --答案:错误
    --解释:各版本之间的功能不一样,如果工作组版无法还原带有分区的备份

    --24 i)WITH STANDBY 参数会破坏还原链
    --答案:错误
    --解释:With Standby 参数WITH NORECOVERY并无区别,事务日志传送可以保证从库一定时间段内可读

    --24 j)如果备份数据库的服务器没有开启即时文件初始化选项,那么恢复的服务器就不能利用这个特性
    --答案:错误
    --解释:即时文件初始化是 WINDOWS特性,因此取决于服务的运行账号


    --24 k)还原是从损坏中恢复的最佳办法
    --答案:错误
    --解释:还原是从损坏中恢复的一个办法,但不一定是最佳办法,得依据情况而定

    --24 l)在开始还原之后还可以备份尾端日志
    --答案:错误
    --解释:尾日志只能在还原开始前备份

    --24 m)你可以还原到在备份的日志范围之内的任何时间点
    --答案:错误
    --解释:如果备份的日志范围内数据库被修改为大日志恢复模式,则不能还原到指定时间点


    --24 n)只要备份成功,就可以利用这个备份集进行还原
    --答案:错误
    --解释:备份成功不代表备份文件写入过程中没有发生错误 (IO错误) ,因此也不能保证一定能成功还原

    --24 o)所有的SQL Server 页类型都可以通过单页恢复进行还原
    --答案:错误
    --解释:对应数据页,可以使用页修复来完成,对应索引页,可以使用重建索引来修复,对应分配位图页,则不能使用还原修复
    --扩展位图也可以使用镜像进行修复

    --24 p)RESTORE ... WITH VERIFYONLY 选项会验证整个备份集
    --答案:错误
    --解释:RESTORE WITH VERIFYONLY 只会检查备份头,而 BACKUP WITH CHECKSUM会检查和校验整个备份集


    --24 q)可以在不还原证书的情况下,还原被透明数据加密的数据库
    --答案:错误
    --解释:透明数据加密就是为了防止备份或数据文件被盗用的情况
    --扩展:如果附件透明数据加密的数据库或还原透密数据加密的数据库备份,都需要先建立证书


    --24 r)当还原过程完成后,还原会进行 Redo和Undo
    --答案:错误
    --解释:每次还原操作后其实执行的都是 Redo操作,只有在整个还原过程完成后,才会进行 Undo。

    --24 s)压缩备份集只能被还原到 SQL Server 2008企业版中
    --答案:错误
    --解释:所有的版本都能还原压缩后的备份。从 SQL Server 2008 R2开始,标准版也可以进行压缩备份。


    --24 t)将低版本的数据库还原到高版本的实例可以跳过升级过程
    --答案:错误
    --解释:在数据还原和附加的过程中是不允许跳过必须的升级和恢复过程。

    --24 u)在位实例下备份的数据库无法恢复到位实例。反之亦然
    --答案:错误
    --解释:数据库的内部格式和 CPU构架无关。


    --24 v)只要进行数据还原,就可以保证程序正常执行
    --答案:错误
    --解释:数据还原外还需要配置服务器端口 +登录+ 权限等一些设置才能保证程序正常访问


    --24 w)还原受损的文件需要从多个文件组进行还原,则必须还原相关的所有文件组
    --答案:错误
    --解释:在SQL Server 2000 中的确是这样,但在 SQL Server 2005以后的版本就完全不用了。


    --24 x)你可以将数据库还原到任何最新版本的实例
    --答案:错误
    --解释:每个版本都有最低的兼容级别,还原数据库不能跨越过多的版本


      --24 y)备份时间和还原时间是一样的
    --答案: 错误
    --扩展: 如果配置差不多的情况下 ,还原和备份时间基本差不多

    --24 z)在还原数据库之前需要先 Drop被还原的数据库
    --答案: 错误
    --解释:你可以使用REPLACE选项
     
    --http://www.cnblogs.com/CareySon/archive/2013/01/18/2866428.html

  • 相关阅读:
    Javascript之DOM性能优化
    移动端内容超出容器滑动会卡的解决办法
    Oracle表、列、约束的操作
    Oracle INTERVAL DAY TO SECOND数据类型
    linux下mysql的root密码忘记解决方法
    Oracle:grouping和rollup
    Oracle 中的Pivoting Insert用法
    使用INTERVAL YEAR TO MONTH类型
    SQL:deferrable initially deferred
    ORA-25154/ORA-01748
  • 原文地址:https://www.cnblogs.com/TeyGao/p/3519026.html
Copyright © 2020-2023  润新知