扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
解决delete后查询的性能问题,如何清理碎片,降低高水位?
成都创新互联专注于乡宁网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供乡宁营销型网站建设,乡宁网站制作、乡宁网页设计、乡宁网站官网定制、重庆小程序开发服务,打造乡宁网络公司原创品牌,更为您提供乡宁网站排名全网营销落地服务。
对于oracle,我知道delete后高水位不会下降,也就是说对于查询性能影响比较大。
对于sqlserver,是否也有这种问题?如果降低高水位。导入导出肯定可以,但是对于在线系统,而且delete都是按条件删的。如何解决由于插入删除后的查询性能问题呢?
请大师们指点。谢谢!
[解决办法]
删除少量数据应该没有什么影响,默认数据库会自动计算
如果是执行大量的删除、修改的,重新索引整理就可以了
[解决办法]
这样的东西应该不用考虑吧
[解决办法]
删除后立即COMMIT
[解决办法]
查看一下索引碎片,整理索引.
[解决办法]
关注一下!!
[解决办法]
关注~
[解决办法]
一般来说,碎片情况如果严重的话,可以整理或者重建一下聚集索引,其他索引会一起更新
[解决办法]
delete 或 update 后,会使索引的物理位置不连续,要解决这个问题
定期用dbcc 清理碎片或重新建立索引
注意,有时清理碎片的时间可能会比后面的操作还要费时
[解决办法]
学习
[解决办法]
聚集索引都整理好了,还理会什么表啊?
与聚集索引的情况下,数据存储是依赖聚集索引来存储的
[解决办法]
数据库维护计划里面有重新组织索引和重新整理索引
可以定一个计划每周执行一个,将指定的数据库或某个表下面所有的索引重新整理一次
无法是 老生常谈的 truncate 、move 、shrink space
实际上 大多数表不需要降高水位,不要迷信高水位
在open database阶段 出现ORA-00704: bootstrap process failure ,一般是说明oracle核心的bootstrap对象可能受损了,所以oracle启动bootstrap的过程被打断了。
ORA-00704: bootstrap process failure
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file N cannot be read at this time
例如上面的报错说明了由于 数据文件N 在此时无法读取导致 递归SQL错误,oracle认为这样启动数据库是不行的,所以报出ORA-00704错误, 对于该问题 可用的手段:
1、如果有备份恢复可以考虑从备份中恢复
2、如果没有备份 那么需要使用特殊手段 手动patch system.dbf 系统表空间上的数据字典 来绕过该问题。
如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!
最笨最简单也最管用的方法,就是重建表。建立一个新表将原表的数据插入到新表,删除原表,将新表重命名就OK。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流