那以后新的数据进来,是不是先填空删除的空间,然后高水线再随着数据的增加而增加呢

解决方案 »

  1.   

    1、delete删除数据后,该表的高水线不会降低。
    2、如果记录被删除后某些数据块允许再插入新数据,这些块会加到空闲列表,新的数据进来,会在空闲列表中找可用的块。如果空闲列表用完,并且定义了表的扩展方式,高水线会不断增加。
    3、通常情况下,高水线对性能的影响在全表扫描时,全表扫描的范围是表开始到高水线,即使中间有空块,这样就影响性能。
    4、如果清空表,可以用truncate来让高水线归位。如果只是删除部分数据,没有很方便的办法,可以采用重建表的方式进行。
      

  2.   

    不长了,到200万才会继续长,
    我曾经用一张三千多万条的记录试过.
    如果想降低高水线,先用create table tmp-table as select * from table;然后truncate table;接着insert into table select * from tmp-table 然后drop tmp-table 
    或者做表的导出导入也可以
      

  3.   

    影响high-water  的是truncate table、
    delete不会。