ORA-14523: Cannot co-locate [sub]partition of string string with table [sub]partition because string block size [string] does not match table block size [string] ORACLE 报错 故障修复 远程处理

文档解释

ORA-14523: Cannot co-locate [sub]partition of string string with table [sub]partition because string block size [string] does not match table block size [string]

Cause: A DDL statement was issued that would require a partition/subpartition of a local index/LOB column to be co-located with the corresponding partition/subpartition of the base table. However, this is not possible because the block sizes of the table and the LOB column/local index are different.

Action: Either (1) Specify an object-level default tablespace (or partition-level default tablespace for the appropriate partition, if composite partitioning is used) for the partitioned local index/LOB column and then retry the DDL command, OR (2) Ensure that tablespaces of the correct block size are specified for all new partitions/subpartitions being created. Also ensure that neither of TABLESPACE DEFAULT and STORE IN (DEFAULT) is specified for a local index whose block size does not match that of the base table.

这个错误表明,您试图把一个“子分区”或“分区”与表的“子分区”或“分区”共位化,但由于它们之间的块大小和分区方法不同,因此该操作失败。

官方解释

常见案例

正常处理方法及步骤

步骤:

1.首先,查询数据表上的块大小和分区/子分区方法:

SELECT BLOCKSIZE, PARTITIONING_TYPE, TABLESPACE_NAME

FROM DBA_TABLES

WHERE TABLE_NAME =

;

2.查询分区表/子分区表上的块大小和分区/子分区方法:

SELECT BLOCKSIZE, PARTITIONING_TYPE, TABLESPACE_NAME

FROM DBA_PART_TABLES

WHERE TABLE_NAME =

;

3.将分区表/子分区表上的块大小更改为与数据表一致:

ALTER TABLE

MODIFY PARTITIONS BLOCKSIZE n;

4.重新运行分区表/子分区表上的共存和加载命令:

–共存

ALTER TABLE

COALESCE PARTITION ;

–加载

ALTER TABLE

INSERT PARTITIONS FROM ;


数据运维技术 » ORA-14523: Cannot co-locate [sub]partition of string string with table [sub]partition because string block size [string] does not match table block size [string] ORACLE 报错 故障修复 远程处理