第一步、设置deferred_segment_creation 参数为FALSE,关闭该新特性。该参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配初始化空间;
- alter system set deferred_segment_creation=false scope=both;
第二步、设置该参数只是对新增的表生效,已经创建完毕的表还是没有初始化空间,若想解决该问题,需要给空表分配一个初始化空间。
- select'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
注:以上的语句是通过拼接字符串的形式,生成空表分配空间的命令。拷贝后在表所在的数据库用户下执行即可。