在OGG同步过程当中,常常会碰上有建立表或表空间的同步,每每由于源和目标的平台不一样,如aix->linux or linux->windows,这两个平台的表空间也常常不一样,在目标端执行DDL时,可能会报错:linux
OGG-00495 Oracle GoldenGate Delivery for Oracle, erep5.prm: DDL error ignore for next retry: error code [DEFAULT], filter [include all (default)], error text [Error code [959], ORA-00959: tablespace 'D_724ACCESS' does not exist, SQL CREATE INDEX "OGGADM"."CUSTMER_PK" ON CUSTMER (CUST_ID) TABLESPACE D_724ACCESS /* GOLDENGATE_DDL_REPLICATION */]windows
针对这种状况,通常是使用DDLSUBST进行源和目标端的表空间名称替换,即在目标端先创建好目标端须要的表空间,而后在rep参数文件中添加以下语句:spa
DDLSUBST 'src-tablespace-name' WITH 'target-tablespace-name' INCLUDE ALLcode