Goldengate Drop Extract Capture Process

Goldengate capture processlerinin tümü aşağıdaki şekilde drop edilebilir.

BEGIN
     FOR i IN (SELECT capture_name FROM dba_capture)
     LOOP
         DBMS_CAPTURE_ADM.STOP_CAPTURE(i.capture_name, true);
         DBMS_CAPTURE_ADM.DROP_CAPTURE (i.capture_name, true);
     END LOOP;
 END;
 /

Manuel olarak bazı process’leri drop etmek için aşağıdaki adımları uygulayabilirsiniz.

$ sqlplus / as sysdba
SQL> select capture_name from dba_capture;
Result:
CAPTURE_NAME
-------------
GGS$CAP_DSSSDDSS
SQL> exec DBMS_CAPTURE_ADM.STOP_CAPTURE('GGS$CAP_DSSSDDSS', true);
SQL> exec DBMS_CAPTURE_ADM.DROP_CAPTURE('GGS$CAP_DSSSDDSS', true);

DROP_CAPTURE komutunu çalıştırmadan önce process’in active olması ihtimaline karşı STOP_CAPTURE komutunun çalıştırılması gerekmektedir. Aksi halde aşağıdaki gibi hata verecektir.

ORA-01338 Other process is attached to Logminer session
ORA-06512 at "SYS.DBMS_CAPTURE_ADM_INTERNAL", line 238
ORA-06512 at "SYS.DBMS_CAPTURE_ADM_INTERNAL", line 225
ORA-06512 at "SYS.DBMS_CAPTURE_ADM", line 268

Goldengate içerisinden extract process’lerini drop etmek için aşağıdaki adımları uygulayabilirsiniz.

GGSCI> dblogin userid gguser password xxxx
GGSCI> stop extract_process_name
GGSCI> unregister extract extract_process_name
GGSCI> delete extract_process_name