位置: 编程技术 - 正文

SQL Server误区30日谈 第8天 有关对索引进行在线操作的误区(sqlserver1053怎么解决)

编辑:rootadmin

误区 #8: 在线索引操作不会使得相关的索引加锁

错误!

在线索引操作并不是想象的那么美好。

在线索引操作会在操作开始时和操作结束时对资源上短暂的锁。这有可能导致严重的阻塞问题。

在线索引操作开始时,会在被整理的资源上加一个共享的表锁,这个表锁在会在新的索引创建时、老索引进行版本扫描时一直持续。

但问题是,这个S锁会和表上的其它锁排成锁队列。这也就是意味着和S锁不兼容的其它锁在表上存在S锁或是表上的锁队列存在中包含S锁时,这类和S锁不兼容的锁操作也需要等待。这也意味着各种更新操作会被阻塞。同样,如果表上存在X锁或是IX锁时,S锁请求也会被阻塞。

上述步骤完成后,S锁会被去掉,但你可以发现这已经对数据更新产生了影响。这期间还会造成所有等待的更新操作的执行计划被重新编译

在线索引整理在开始需要加锁的部分完成后,剩下的大部分时间是不需要任何锁的。(这个大部分指的是整个在线索引整理的大部分时间)

当在线索引操作完成后,新建立的索引和老的索引上面都需要加一个构架修改锁(SCH_M锁)来完成最终操作。这个锁可以想象成一个更强的表级排它锁。这个锁存在期间不允许对表做任何操作,针对表的执行计划也不能重编译。

在线索引操作最终阶段的阻塞问题和在线索引操作开始时由S锁造成的阻塞问题非常类似-在SCH_M锁持续或者等待被授予期间,不允许对表进行任何操作。反之,表中存在任何读写操作时,SCH_M锁也不能被授予。

在最终阶段的SCH_M锁持续期间,旧的索引会被执行延迟DROP操作,元数据所指向的分配结构指向新的索引(所以index id不变),表的版本被更新,恭喜,现在开始你已经拥有了一个全新的索引。

如你所见,在线索引操作的开始和结束阶段潜在存在着巨大的阻塞问题。所以技术上对在线索引操作应该称为“大部分时间在线索引操作”,但这种叫法可不会受到市场的欢迎。如果你想对在线索引操作了解更多,请阅读白皮书:Online Indexing Operations in SQL Server 。

译者注:汪洋有一篇关于在线索引操作非常详细的文章,有兴趣的同学可以阅读: 联机索引的工作方式 ,下面我摘抄他文章中的一个图片来让在线索引操作的步骤更加清晰。

推荐整理分享SQL Server误区30日谈 第8天 有关对索引进行在线操作的误区(sqlserver1053怎么解决),希望有所帮助,仅作参考,欢迎阅读内容。

SQL Server误区30日谈 第8天 有关对索引进行在线操作的误区(sqlserver1053怎么解决)

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

SQL Server误区日谈 第9天 数据库文件收缩不会影响性能 误区#9:数据库文件收缩不会影响性能错误!收缩数据库文件唯一不影响性能的情况是文件末尾有剩余空间的情况下,收缩文件指定了TruncateOnly选项。收缩

SQL Server误区日谈 第天 数据库镜像在故障发生后 马上就能发现 误区.数据库镜像在故障发生后,马上就能发现错误市面上大肆宣传数据库镜像技术可以在故障发生后,立即检测到错误并进行故障转移。但事实并不

SQL Server误区日谈 第天 镜像在检测到故障后瞬间就能故障转移 误区#:镜像在检测到故障后瞬间就能故障转移错误数据库镜像的故障转移既可以自动发起,也可以手动发起。在自动发起的情况下,是由镜像服务器执

标签: sqlserver1053怎么解决

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

上一篇:SQL Server误区30日谈 第7天 一个实例多个镜像和日志传送延迟(sql语句错误提示)

下一篇:SQL Server误区30日谈 第9天 数据库文件收缩不会影响性能(sql server 3417错误)

  • 车辆购置税会计科目怎么做账
  • 查询一般纳税人资格证明
  • 营利性医疗机构筹建是什么意思
  • 报关单保费000/0.1/1
  • 申报后发现未勾选发票
  • 会计核算的四大要素
  • 事业单位固定资产
  • 4s店收取的金融服务费用
  • 未开票收入结转成本年利润怎么算
  • 出口样品未报关怎么处理
  • 开的是全额发票但是有分包如何做账务处理?
  • 递延所得税资产是什么
  • 已经开具的增值发票
  • 年末一般纳税人应交增值税借贷调平什么意思
  • 河道维护费所有权归属
  • 学校方面的增值税的问题
  • 公司绿化购买的苗木如何进行账务处理?
  • 增值税如何计提和结转
  • 从贸易公司购买来的货物可以退税吗
  • 微信语音音乐怎么调
  • 企业技术开发的原则
  • 怎么添加一个
  • unsupportedfirsthd解决办法
  • 积极的财政政策有哪些
  • 多交的附加税怎么做账
  • 筹备期废品回收会计分录
  • 结转人工费会计分录
  • 厂区道路施工步骤
  • mac怎么创建icloud
  • word基本怎么使用
  • 挂账多年的往来账怎么处理
  • dcom进程
  • 现金长款和短款怎么处理
  • 利润分配的账务处理如何做
  • 死亡谷景点
  • uniapp动态设置标题
  • 农村个体户需要报税吗
  • Yii使用migrate命令执行sql语句的方法
  • 企业债权人进行财务分析的根本目的是关心企业的
  • php绘制图片
  • vue2路由跳转页面不刷新问题
  • html5简单吗
  • 2023华为OD机试题
  • 城投公司政府购买棚改
  • 增值税怎样交
  • 无纸化的好处和坏处
  • 全年一次性奖金单独计税还是并入
  • linux mysql忘记密码的多种解决或Access denied for user 'root'@'localhost'
  • 劳务派遣业务的特点
  • sql2008还原到2012
  • 跨月发票税率开错了如何处理合适?
  • 补开发票交税
  • 待抵扣进项税额是什么情况下用的
  • 私企会计一般一个月多少钱
  • sql中的递归
  • MYSQL updatexml()函数报错注入解析
  • 一次性压缩洗脸巾
  • 触发器中instead of
  • 优化加速锁定任务是什么意思
  • vtpwsr
  • 电脑周边是什么
  • mac怎么玩电脑游戏
  • fedora 图形界面
  • win7定时静音
  • linux crontab用法
  • win10系统玩游戏闪退怎么解决
  • 命令窗口的作用
  • win10没有win8好用
  • c盘权限恢复默认设置
  • dos echo命令
  • parentElement,srcElement的使用小结
  • JavaScript驾驭网页-获取网页元素
  • jquery追加节点
  • nodejs require
  • python module import
  • unity安卓手机游戏官网
  • python中os模块有什么作用
  • python压缩文件为gz
  • python3多态
  • 销售折让怎么开票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设