Description

Use the ora_cleansp utility to remove the current replication state on a system, including deactivating configurations.

Caution:

  • Running ora_cleansp can be acceptable in a test or demonstration environment, but it rarely is appropriate in a production environment. The effects of the cleanup are not reversible.
  • If the SharePlex instance for which you are running ora_cleansp is configured to capture from or post to multiple databases, ora_cleansp will remove the replication configuration and supporting data for all of those databases.

Supported databases

Oracle on Unix, Linux, and Windows

Other alternatives to ora_cleansp

Before running ora_cleansp, consider the following alternatives:

  • To stop activity for a configuration without restoring replication to an initial state, you might be able to use the abort config or purge config command in sp_ctrl.
  • To truncate the SharePlex tables without purging files in the variable-data directory, you can run the cleanup.sql script from the bin sub-directory (Unix and Linux systems) or the util sub-directory (Windows systems) of the product directory.
  • On Unix and Linux systems, you can purge the files in the variable-data directory, without truncating the SharePlex tables, by running the clean_vardir.sh script from the bin sub-directory of the SharePlex product directory.

Shell requirement

To use this utility, the Korn (ksh) shell must be installed on the system. The utility calls this shell during processing.

How ora_cleansp works

ora_cleansp works in two stages to restore replication to an initial state, as follows:

truncate internal tables: First ora_cleansp truncates any SharePlex internal tables that can be truncated safely. It does not remove the SharePlex Oracle user, password, or demonstration objects.

clean the variable-data directory: Next, ora_cleansp removes the following components from the SharePlex variable-data directory:

    • The queue files in the rim sub-directory.
    • The log files in the log sub-directory. The Event log retains one entry reflecting the outcome of the ora_cleansp procedure.
    • The contents of the statusdb file in the data sub-directory.
    • The contents of the dump and state sub-directories.
    • Any transactions in the oos sub-directory, if the SP_OPO_SAVE_OOS_TRANSACTION parameter is enabled.

ora_cleansp preserves user-created files such as configuration files, conflict-resolution files, transformation files, hint files, the paramdb, and the oramsglist file.

ora_cleansp deactivates configurations. To start replication after running ora_cleansp, you must activate a configuration.

Run ora_cleansp

Important! ora_cleansp must be run on all source and target systems to restore replication to an initial state. To verify if and when ora_cleansp was run on a system, view the Event Log on that system.

  1. Log on as a SharePlex Administrator.
  2. [Unix and Linux ONLY] Set the SP_SYS_VARDIR environment variable to point to the SharePlex variable-data directory. If you are running multiple instances of sp_cop using multiple variable-data directories, set SP_SYS_VARDIR for the variable-data directory that you want to clean up.

    ksh shell:

    $export SP_SYS_VARDIR=/SharePlex_vardir_absolute_path

    csh shell:

    $setenv SP_SYS_VARDIR /SharePlex_vardir_absolute_path
  3. Run sp_ctrl from the bin sub-directory of the SharePlex product directory.
  4. Shut down sp_cop.

    sp_ctrl> shutdown
  5. Verify that all SharePlex processes are stopped by using either the ps -ef | grep sp_ command on Unix and Linux systems or Taskmgr from the SpUtil program on Windows systems.
  6. Kill all orphan SharePlex processes by using either the kill -9 command on Unix and Linux systems or the KillSharePlex.bat program on Windows systems.
  7. [Unix and Linux ONLY] If you have not done so already, view the oratab file to determine the values for ORACLE_HOME and ORACLE_SID for the instance.

    $cd /etc
    $ more oratab
  8. [Unix and Linux ONLY] Set the ORACLE_HOME and ORACLE_SID environment variables.

    ksh shell:

    $export ORACLE_HOME=[value from oratab file]
    $export ORACLE_SID=[value from oratab file]

    csh shell:

    $ setenv ORACLE_HOME [value from oratab file]
    $ setenv ORACLE_SID [value from oratab file]
  9. On the command line of the operating system, change directories to the bin sub-directory of the SharePlex product directory (note: this must be the current working directory).

  10. Run ora_cleansp as the SharePlex user account in the Oracle instance. Note: If run as a different user, ora_cleansp does not truncate the SharePlex tables.

    Additionally, on Unix and Linux, include the database/datasource name (Oracle_SID) as defined in the connections.yaml file.

    Unix and Linux:

    $ ./ora_cleansp database_name/SharePlex_username[/SharePlex_password]

    (For an Oracle PDB): $./ora_cleansp tns_alias for pdb/SharePlex_username[/SharePlex_password]

    Windows:

    C:\users\splex\bin>ora_cleansp SharePlex_username[/SharePlex_password]

    (For an Oracle PDB): C:\users\splex\bin>ora_cleansp SharePlex_username[/SharePlex_password@tns_alias for pdb]

    Important! On Windows, if you installed SharePlex on any port other than the default of 2100, use the -r option to specify the port number. For example, in the following command the port number is 9400:

    C:\users\splex\bin>ora_cleansp SharePlex_username[/SharePlex_password] -r9400

  11. View the Event Log after you run the utility to confirm its results.

    Note: If the utility generates an error message stating that it cannot remove the .../ save_SharePlex_version directory, you can ignore the message and remove this directory.