虹口房产网站建设,怎么制作网站教程步骤视频,网站管理后台下载,seo sem是什么重新创建#xff08;create#xff09;索引的主要原因是因为新的业务的发展的需要#xff0c;而重组索引往往是因为索引的偏移膨胀或者是数据删除引起的稀疏状态#xff0c;也就是有些人说的“碎片”#xff0c;这个情况下#xff0c;我们就可以在线重组索引#xff08;…重新创建create索引的主要原因是因为新的业务的发展的需要而重组索引往往是因为索引的偏移膨胀或者是数据删除引起的稀疏状态也就是有些人说的“碎片”这个情况下我们就可以在线重组索引rebuild online。 当然如果需要创建的索引或者需要重组的索引很小创建与重组过程在几秒之内这些都可以直接做而不需要讨论。实际情况是业务很繁重以及表与索引都很大。这些情况下我们需要注意些什么呢 1、创建新索引 首先评估该索引的需要程度如果不是特别紧急的大索引最好在维护时间操作还要评估该索引是否会对现有的语句造成负面影响如导致以前的语句错误的走到这个新索引上在日期打头的索引上很容易出现这样的问题。 然后根据索引大小以及需要在上面创建的表业务 是否繁忙如果业务繁忙尽量选择业务不繁忙的时间系统负载不高的情况下做避免额外的消耗如凌晨2点-6点进行操作。创建索引之前评估索引的大小以 及索引所在表空间剩余空间的大小除此之外还要评估临时表空间大小是否足够用于创建索引时的排序操作。 最后确定要创建以后可以采用online模式创建并且在创建的时候马上分析。 SQLcreate index index_name on table_name (field1,field2) tablespace tbs_name online [compute statistics]; 创建完成以后还要马上检查系统应用如果发现有错误走到该索引的语句并且有严重影响的可能需要立即删除该索引或者约束。 SQLalter table table_name drop constraint constraint_name cascade;SQLdrop index index_name; 在一些情况下需要改造一个索引如添加一个字段到索引或者从索引中删除一个字段这个时候也需要重新创建索引但是需要严格按照如下顺序来操作 a、创建新的替代索引如加字段或者减字段后的索引 b、测试新的索引没有任何问题 c、删除原来的索引 2、重组索引 如果索引因为更新太频繁或者是删除数据过多可能引起索引的数据稀疏分布造成大量的空间浪费并且严重影响索引的扫描速度。这样的情况下我们需要对该索引进行空间重组。 重组之前因为重组索引的时候先并不删除以前的索引同样需要确认重组以后的索引所在的表空间是否有足够的空间以及是否有足够的临时表空间用于排序。同样如果索引很大而且使用比较频繁请确认在业务不繁忙的时候操作。 SQLalter index index_name rebuild [tablespace tbs_index2] online [compute statistics]; 3、快速创建/重组 有的时候索引实在太大如几十个G的索引创建一次或者重组一次需要耗费很长的时间如果硬件条件许可我们可以采用一些特殊的方法来提高速度如采用大的排序区并行操作等等。 SQLalter session set workarea_size_policymanaul;SQLalter session set sort_area_size1073741824;SQLalter session set sort_area_retained_size1073741824;SQLalter session set db_file_multiblock_read_count128;--parallel 2SQLalter index index_name rebuild online parallel 2 compute statistics; 然后特别需要注意的是在并行创建或者重组完成以后一定要取消索引的并行度否则在OLTP环境中可能会因为意外的使用并行而出现严重性能问题。 SQLalter index index_name noparallel;