行迁移不能避免,增加每个块的大小可以减少行迁移的可能行,但也会造成更大的空间浪费。这个平衡点需要根据应用不同进行确定。
“行迁移”,Oracle的数据按照块保存,如果一块数据磁盘空间无法保存某个数据时(比如以前是1K,现在update到2K,而当前块的空闲空间不足1K),则会将新的数据保存到另外一个新的块里,然后在以前的块保存一个新位置的地址连接。
比如

数据都保存在一个块里面,中间有2块的空闲空间,现在第四行数据要扩容。发现单块的空闲空间不足,则评估合并的空闲空间是否满足

评估合并后的空闲空间依然不满足空间要求,则此时发生“行迁移”
前后台订单管理页添加商品缩图显示 后台系统设置可直接对商品缩图大小进行设置 去掉商品图片水印功能 上传一张图片,可同时生成列表页缩图及商品详细页缩图,以不同的大小满足页面不同的需要 商品收藏添加批量删除功能 修改商品详细页会员等级显示BUG 优化缩图生成功能(注:因此次优化已更换上传内核,所以有可能会影响已上传商品图片数据) 加入简繁转换 前台订单管理添加单订单在线支付功能 修正VS081样式前台
0

在一个新的块保存了新的第四行数据,然后在原始块保存了新地址的连接。这就是行迁移的过程。
2 行迁移有什么影响呢?
如果你通过一个索引来读这一行,索引会指向原来的块,那个块再指向这个新块。要得到具体的行数据,一般并不是执行两个左右的I/O 就可以得到行数据。单独来看,这不是大问题,甚至根本注意不到。不过,如果这种行所占的比例相当大,而且有大量用户在访问这些行,你就会注意到这种副作用了。访问这些数据的速度开始变慢(额外的I/O 以及与I/O 相关的闩定都会增加访问时间),缓冲区缓存的效率开始下降(需要缓存两个块,而如果行没有迁移就只需要缓存一个块),另外表的大小好复杂性都有所增加。由于这些原因,你可能不希望迁移行。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号