3 规避方法介绍
从上述对比试验中可以看出,只有Oracle自带的Export命令导出再导入后的索引结构和原有结构一致,其他方式都无法准确获取到分区索引的脚本。
虽然我们可以通过把Export导出条件设置为不存在结果集来导出空表,再利用导出的dump文件导入到其他库来新建表和索引。但这种方式无法直观的看到建表的SQL脚本,可扩展性差。
本地索引:
CREATE INDEX T_SMS_IDMONTHDAY ON T_SMS
(MONTHDAY)
TABLESPACE SMS_DAT
INITRANS 2
MAXTRANS 255
LOCAL (
PARTITION P01
LOGGING
NOCOMPRESS
TABLESPACE SMS_DAT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
),
PARTITION P02
LOGGING
NOCOMPRESS
TABLESPACE SMS_DAT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
)
……(此处省略部分代码)
)
NOPARALLEL;
全局索引:
CREATE INDEX T_SMS_IDMONTHDAY ON T_SMS
(MONTHDAY)
LOGGING
TABLESPACE SMS_DAT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
CREATE INDEX T_SMS_IDMONTHDAY ON T_SMS
(MONTHDAY)
TABLESPACE SMS_DAT
INITRANS 2
MAXTRANS 255
LOCAL (
PARTITION P01
LOGGING
NOCOMPRESS
TABLESPACE SMS_DAT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
),
PARTITION P02
LOGGING
NOCOMPRESS
TABLESPACE SMS_DAT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
)
……(此处省略部分代码)
)
NOPARALLEL;
全局索引:
CREATE INDEX T_SMS_IDMONTHDAY ON T_SMS
(MONTHDAY)
LOGGING
TABLESPACE SMS_DAT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;