I will give some code and explain to how to drop extract capture processes permanently on GoldenGate.
You can drop all extract capture processes with the below PL/SQL code.
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;
/
If you want to continues manual, you can follow the below code. It will work.
$ 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);
If your capture process status is active while operation time, probably you will get the below error. Before drop operation, you must call STOP_CAPTURE procedure. Otherwise, you will get the below error.
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
Lastly, you can drop to GoldenGate capture process in GoldenGate bash terminal with the below code.
GGSCI> dblogin userid gguser password xxxx
GGSCI> stop extract_process_name
GGSCI> unregister extract extract_process_name
GGSCI> delete extract_process_name