19.9 Command-Line Syntax and Properties

Use the Cloud Premigration Advisor Tool (CPAT) properties to specify the checks and other operations you want to perform in CPAT command-line syntax.

19.9.1 Premigration Advisor Tool Command-Line Syntax

You run the Premigration Advisor Tool as a command-line shell script.

Prerequisites

  • You must have Java Development Kit (JDK) 7 or later installed in your source environment. Oracle recommends that you use Java 8 Runtime Environment (JRE).

    JDK 8 is installed with every release starting with Oracle Database 12c Release 2 (12.2). For any release earlier than 12.2, you must either run Premigration Advisor Tool (CPAT) using the Java release in the target Oracle Database, or you must install JDK 8 on your source database server.

Java File Path

Obtain the latest CPAT zip file from My Oracle Support. The application and deployment instructions for the application are available from My Oracle Support note 2758371.1. Because CPAT is a Java-based tool, it requires that an appropriate Java Runtime Environment (JRE) is installed on the machine where the tool is run.

For thin clients, CPAT searches for a Java Runtime Environment (JRE) using the environment variables JAVA_HOME and ORACLE_HOME. The JRE should be in one of these paths.

For thick clients, CPAT uses an Oracle Call Interface (OCI) based JDBC connect string. With this type of connection string, CPAT connects to the database typically by using the environment variables: ORACLE_SID, ORACLE_HOME, and LD_LIBRARY_PATH.

Note:

You only need to set the ORACLE_SID if you use operating system authentication for the user running CPAT. If necessary, the CPAT script can set LD_LIBRARY_PATH by itself, so in most cases, you only need to set an ORACLE_HOME environment variable.

Syntax

The Premigration Advisor Tool command syntax is case-sensitive. You can pass properties either as character strings or as text strings, as noted for each command property.

The syntax takes the following format, where character is a single case-sensitive character, command-string is a case-sensitive string, and value is an input option or value specified by the command property.

Java

java -jar premigration.jar [-character [value] | --command-string [value]]

Shell command:

./premigration.sh [-character [value] | --command-string value[]

Multiple properties can be concatenated in the command syntax, using either the character flag or the full name of a property.

19.9.2 Premigration Advisor Tool Command-Line Properties

Review the Premigration Advisor Tool properties to construct a command tree and options for your Oracle Database migration scenario. .

19.9.2.1 analysisprops

The Premigration Advisor Tool property analysisprops specifies the path and name of a properties file for the source database.

Property Description

property type

character, string

Syntax

-a|--analysisprops --property-file-name

Description

The Premigration Advisor Tool analysisprops property specifies the path and name of a properties file that you have generated previously for the source database by using the Premigration Advisor Tool command-line property --gettargetprops. You use this properties file with the Premigration Advisor Tool to analyze properties of the database .

Usage Notes

In the command string, you must also specify the options --connectString (-c) to the source database, and --targetcloud (-t) to specify the type of Cloud database to which you want to migrate.

Examples

In this example, you obtain the properties file premigration_advisor_analysis.properties from the target instance, and identify that file to use with analysisprops:

./premigration.sh --connectstring jdbc:oracle:oci:@ --targetcloud ATPD --sysdba \
--analysisprops premigration_advisor_analysis.properties

19.9.2.2 connectstring

The Premigration Advisor Tool property connectstring provides the JDBC connect string for the source database.

Property Description
property type character, string
Syntax
-c, --connectstring connect-string [--pdbname pdb-name]
Default value None

Description

The connectstring property specifies the JDBC connect string for the source database. If the connect string is for a CDB, then you must also specify a PDB name using the --pdbname switch, using --pdbname pdb-name, where pdb-name is the name of the PDB containing the source database.

CPAT connections have the following steps:

  1. Connect to and obtain properties from the target instance using primigration.sh. This connection requires connnection information for the target instance, but does not require --targetcloud. It is this step that creates the premigration_advisor_analysis properties file. connectstring is required.
  2. If necessary, connect to the computer where you will analyze the source instance, and copy the premigration_advisor_analysis.properties file to that computer.
  3. Generate a CPAT report by running premigration.sh with the connection information for the source instance.

If you have a properties file that has Cloud service/lockdown information about the target, then --targetcloud is not required. If you do not provide a properties file, or if the properties file doesn't specify the Cloud service, then to obtain the most relevant information, you must use --targetcloud or -t to specify a target cloud. If you don't specify a target cloud using --targetcloud or -t, then the default is a Cloud target with no known Cloud service/lockdown profile set on the PDB target.

Note:

The restrictions enforced by a lockdown profile are for the entire PDB, and affect all users on that PDB, including SYS and SYSTEM.

Examples

In the following example, the PDB name is sales1, and connect-string indicates where the connection string is placed.

premigration.sh -c connect-string --pdbname sales1

19.9.2.3 excludeschemas

The Premigration Advisor Tool property excludeschemas specifies a list of schemas that you want to exclude from analysis for migration.

Property Description

property type

string

Syntax

--excludeschemas --schemaname ['schemaname' 'schemaname' ...]

where schemaname is the name of one or more schema names, separated by spaces.

Schema names are assumed to be case sensitive. For example, use SYSTEM, not system. If a schema name is lowercase, mixed case, or uses special characters, then use double quotation marks as well as single quotation marks to designate the schema name. For example:

--excludeschemas '"MixedCase"' '"Special.Char$"'

Description

The Premigration Advisor Tool excludeschemas property specifies the schemas that you want to exclude from analysis for their readiness to migrate to the Cloud.

Usage Notes

Use to indicate the schemas on which you do not want premigration checks to be performed. If excludeschemas is omitted, and schemas is not used, then all schemas in the database will be analyzed. The excludeschemas property cannot be used in conjunction with schemas.

In the command string, you must also specify the options --connectString (-c) to the source database, and --targetcloud (-t) to specify the type of Cloud database to which you want to migrate.

19.9.2.4 full

The Premigration Advisor Tool (CPAT) property full specifies that the full set of checks are run, even when --schemas is used.

Property Description

property type

character, string

Syntax

-f|--full

Description

Each CPAT check has a defined scope. If the scope of a check is INSTANCE, then that check will not be run unless you override that defined scope by selecting FULL. The CPAT full property forces the full set of checks to be run on the source database, even when --schemas has also been specified in the command string to limit the scope of checks.

Usage Notes

The option you use with CPAT should also be used with Oracle Data Pump. If you intend to use Oracle Data Pump with FULL mode, then you should run CPAT with the full property. If you intend to use Oracle Data Pump in SCHEMA mode, then run CPAT in schema mode.

Examples

Suppose you have 100 schemas in your source database instance, but you want to migrate only three schemas, s1, s2 and s3, to Autonomous Transaction Processing Dedicated (ATP-D).

In this case, you do not need to analyze all the schemas, but you do want to run INSTANCE SCOPED checks on all three schemas. You can do this by running CPAT with --schemas s1 s2 s3 --full

19.9.2.5 gettargetprops

The Premigration Advisor Tool property gettargetprops reads the connection properties for the migration target database instance for analysis against the source database instance.

Property Description

property type

string

Syntax

-g|--gettargetprops property

Description

The Premigration Advisor Tool gettargetprops property specifies that CPAT collects the connection parameters for the migration target instance. CPAT collects properties of the migration target instance, so that it can then analyze those properties on the source database instance.

Usage Notes

These properties are typically set by tools that use CPAT in their migration flow, and use these properties to specify to CPAT that certain migration operations have been or will be performed during migration. Generate the properties file with the --gettargetprops switch and targetconnection parameters

For more information, run premigration.sh --help, or premigration.com --help on Microsoft Windows systems.

Examples

./premigration.sh --gettargetprops --connectstring jdbc:oracle:thin:@atpd_high?TNS_ADMIN=/path/wallet . . . 

19.9.2.6 help

The Premigration Advisor Tool property help prints out the command line help information, and exits.

Property Description

property type

string

Syntax

-h|--help

Description

The Premigration Advisor Tool help property prints out the command-line help instructions, and causes the advisor to exit.

Usage Notes

Use this option to obtain help information about the version of the Premigration Advisor Tool that you are running.

Examples

premigration.sh --help

19.9.2.7 logginglevel

The Premigration Advisor Tool property logginglevel specifies the level of issues recorded in the logging file.

Property Description

property type

string

Syntax

-l|--logginglevel -[severe|warning|info|config|fine|finer|finest]

Default

If you do not provide this property in the command string, then the default is fine.

Description

The Premigration Advisor Tool logginglevel property specifies the severity of issues that you want to have logged in the Premigration Advisor Tool Report

Usage Notes

Use to indicate which type of checks you want to perform on the target database or databases. Log properties:

  • severe
  • warning
  • info
  • config
  • fine
  • finer
  • finest

19.9.2.8 maxrelevantobjects

The Premigration Advisor Tool property maxrelevantobjects specifies the maximum number of relevant objects included in all reports.

Property Description

property type

string

Syntax

-M|--maxrelevantobjects maximum-relevant-objects

Description

The Premigration Advisor Tool maxrelevantobjects property specifies the maximum number of relevant objects displayed in premigration advisor reports, specified by a numeric value. For TEXT reports, this property overrides the maxtextdatarows property.

Note:

If you specify a limit to the number of objects reported, then there can be objects that can affect your migration that are not published in reports.

Usage Notes

The purpose of this property is to place limits on the report that CPAT generates:

  • Limit the size of a CPAT report
  • Limit the memory CPAT uses
  • Exclude inclusion of objects that may contain proprietary or confidential table, column or other information in the report.

Examples

premigration.sh  -maxrelevantobjects 5 -outfileprefix limit -targettype adws -analysisprops /usr/example/CPAT/ cloud_premigration_advisor_analysis.properties

19.9.2.9 maxtextdatarows

The Premigration Advisor Tool property maxtextdatarows specifies a limit to the number of relevant object rows displayed in text reports (does not apply to JSON reports).

Property Description

property type

string

Syntax

-n|--maxtextdatarows maximum-number-of-data-rows

Default

All rows in data tables (no maximum).

Description

The Premigration Advisor Tool maxtextdatarows property specifies the maximum number of relevant object rows that are included in the TEXT reports, and provides a message indicating that rows after the maximum row number is reached are not displayed. If this property is not set, then all relevant objects are included (no maximum). This property does not apply to JSON reports

Usage Notes

Where there is a conflict in property settings, maxrelevantobjects overrides the setting for maxtextdatarows for Premigration Advisor TEXT report files.

Examples

19.9.2.10 migrationmethod

The Premigration Advisor Tool property migrationmethod specifies the type of method or tooling that you intend to use to migrate to Oracle Cloud.

Property Description

property type

string

Syntax

-m|--migrationmethod -['datapump'|'goldengate']

Default

If no value is supplied, then the default is datapump.

Description

The Premigration Advisor Tool migrationmethod property specifies the type of migration method or tooling that you intend to use to migrate databases to the Cloud. The migration method is used to influence what checks are done on the source database. Anything found in the source database that is incompatible with the migration method will be included in the generated report.

Usage Notes

Use to indicate which type of checks you want to perform on the target database or databases.

Option Description

datapump

Specifies that the Preupgrade Advisor Tool performs checks for using Oracle Data Pump to perform migrations to the Oracle Cloud deployment you select.

goldengate

Specifies that the Preupgrade Advisor Tool performs checks for using Oracle GoldenGate to perform migrations to the Oracle Cloud deployment you select.

Examples

In the following example, connect-string indicates where the connection string is placed. The target Oracle Cloud database is Autonomous Transaction Processing Shared, and the migration method selected is Oracle GoldenGate.

premigration.cmd --connectstring some-string --targetcloud atps --username SYSTEM -migrationmethod 'goldengate'

19.9.2.11 outdir

The Premigration Advisor Tool property outdir specifies the directory path where you want premigration analysis log files and report files to be generated.

Property Description

property type

string

Syntax

-o|--outdir directory-path

where directory-path is the path for the log file and report directory.

Description

The Premigration Advisor Tool outdir property specifies where the log files and report files should be created.

Usage Notes

If the path you provide is not an absolute path then the Premigration Advisor Tool specifies the directory relative to the file path location from which CPAT was started. If you do not specify an output file name, then the default file name is premigration. CPAT creates the filename, if it does not exist.

Examples

In the following example, connect-string indicates where the connection string is placed. The target PDB is trend1, the Oracle Cloud database is Autonomous Data Warehouse Dedicated, and the output directory path is /users/analytic/adwd-migr.

premigration.cmd --connectstring connect-string --targetcloud adwd --username SYSTEM --pdbname trend1 -outdir /users/analytic/adwd-migr

19.9.2.12 outfileprefix

The Premigration Advisor Tool property outfileprefix specifies a prefix for the Premigration Advisor Tool reports.

Property Description

property type

string

Syntax

-P|--outfileprefix prefix-string

Description

The Premigration Advisor Tool outfileprefix property specifies a prefix that you want to place on the output reports generated for the source database. Without a prefix, the standard name for a Premigration Advisor Tool report or log is premigration_advisor.

Usage Notes

Use a prefix to distinguish different report outputs. For example, you can use a prefix to distinguish the reports for a database where you generate one report for a migration using Oracle GoldenGate, and another report for a migration using Oracle Data Pump, or generate separate reports for each of the PDBs in a CDB.

Examples

In the following example, the prefix string is cdb4, connect-string indicates where the connection string is placed, and the migration target Oracle Cloud database is Autonomous Transaction Processing Shared. The reports for this command are cdb4_premigration_advisor_report.txt and cdb4_premigration_advisor.log.

java -jar premigration.jar -c connect-string --targetcloud atps -P cdb4

19.9.2.13 pdbname

The Premigration Advisor Tool property pdbname specifies the name of a source PDB on a CDB for which you want CPAT to generate a report.

Property Description

property type

string

Syntax

-p|--pdbname pdbname

Description

The name of a PDB to connect to. Applicable only when the source database connect string is for a CDB.

Usage Notes

You only need to use this property when the source database connect string is for a CDB.

Examples

In the following example, connect-string indicates where the connection string is placed for the source CDB. The source PDB is trend4, and the target is an Oracle Cloud Autonomous Data Warehouse Dedicated database.

premigration.cmd --connectstring connect-string --targetcloud adwd --username SYSTEM --pdbname trend4 

19.9.2.14 reportformat

The Premigration Advisor Tool (CPAT) property reportformat specifies the format of CPAT report output.

Property Description

property type

string

Syntax

-r|--reportformat -format [format format]

where format is a report format. The CPAT supports JSON or TEXT formats. Multiple formats are space-delimited. When this options is not used, the default format of report is txt.

Description

At the time of this release, the Premigration Advisor Tool can generate reports in either JSON or text format. Use the reportformat property to specify which report outputs you require.

Usage Notes

Use to indicate which type of report output you want to generate. If this property is not specified, then the default is TEXT.

Note:

Oracle recommends that you specify both text and JSON reports, and that you always save reports and log files. If you encounter an issue during migration, then it is important to include all possible information to assist with the resolution of the issue, including the log file, and both the text and JSON reports.
Option Description

json

Specifies that the Preupgrade Advisor Tool produces a report in JSON format.

text

Specifies that the Preupgrade Advisor Tool produces a report in text file format.

Examples

In the following example, report outputs in JSON and text formats are specified for a report where the target is an Oracle Cloud Autonomous Data Warehouse Dedicated database. The reports generated are premigration_advisor_report.json premigration_advisor_report.txt.


premigration.cmd --connectstring connect-string --targetcloud adwd --username SYSTEM --sqltext

19.9.2.15 schemas

The Premigration Advisor Tool property schemas specifies a list of schemas that you want to analyze for migration.

Property Description

property type

string

Syntax

-s|--schemas 'schemaname' ['schemaname' 'schemaname' ...]

where schemaname is the name of one or more schema names, separated by spaces.

Description

The Premigration Advisor Tool schemas property specifies the schemas that you want to check for their readiness to migrate to the Cloud. The migration method is used to influence what checks are done on the source database. Anything found in the source database that is incompatible with the migration method will be included in the generated report.

Usage Notes

Use to restrict the report to a specific list of schemas on which you want to perform checks. In schema mode, SCHEMA and UNIVERSAL scope checks are run. INSTANCE scope checks are not run. If you do not specify schemas, and excludeschemas is not used, then the default is to run with the full property. All schemas in the database will be analyzed, except for the schemas managed by Oracle. This can result in your receiving a report that lists problems in schemas that you do not intend to migrate to the Cloud target.

Note:

The option you use with CPAT should also be used with Oracle Data Pump. If you intend to use Oracle Data Pump with FULL mode, then you should run CPAT with the full property. If you intend to use Oracle Data Pump in SCHEMA mode, then run CPAT in schema mode.

The schemas property cannot be used in conjunction with excludeschemas. Limiting the scope of schemas that you check can be particularly useful if the source instance hosts multiple applications, each of which you may want to migrate to different Oracle Autonomous Database instances.

Note:

If you specify the --full property, then it forces the full set of checks to be run on the source database, overriding the restrictions that otherwise are in force when you limit the scope of checks with --schemas.

Schema names are assumed to be case sensitive. For example, use SYSTEM, not system. If a schema name is lowercase, mixed case, or uses special characters, then use double quotation marks as well as single quotation marks to designate the schema name. For example:

--schemas '"MixedCase"' '"Special.Char$"'

Examples

In the following example, a report is generated for the schemas ADMIN and MixedCase where the target is an Oracle Cloud Autonomous Data Warehouse Dedicated database, and connect-string represents the connection string to the source database.

premigration.cmd --connectstring connect-string --targetcloud atps --username ADMIN -s 'SYSTEM' '"MixedCase'"

19.9.2.16 sqltext

The Premigration Advisor Tool property sqltext specifies to show the SQL used for CPAT checks in TEXT reports

Property Description

property type

string

Syntax

-S|--sqltext

Description

The Premigration Advisor Tool sqltext property overides the default to hide SQL that was run for CPAT checks in TEXT reports. This property does not apply to JSON reports. It does not take any options.

Usage Notes

CPAT performs checks on the database using SQL statements. CPAT reports can be generated in both TEXT and JSON format. By default the SQL that was executed for each check is NOT included in the TEXT report. To have the SQL shown in the TEXT report, you can use this parameter.

Examples

premigration.cmd --connectstring connect-string --targetcloud adwd --username SYSTEM --sqltext ImpModes TABLES MySchema MyTable

19.9.2.17 sysdba

The Premigration Advisor Tool property sysdba is used to force AS SYSDBA when connecting to the database.

Property Description

property type

character, string

Syntax

-d,--sysdba

Description

The Premigration Advisor Tool sysdba property specifies that the Premigration Advisor Tool connects to the source database AS SYSDBA. .

Usage Notes

If you are using operating aystem authentication, or the SYS user then you must use --sysdba.You also must use --sysdba to connect as a user who has been granted SYSDBA, but not the other privileges required by CPAT to perform checks.

Examples

./premigration.sh --connectstring jdbc:oracle:oci:@ --targetcloud ATPD --sysdba --analysisprops premigration_advisor_analysis.properties

19.9.2.18 targetcloud

The Premigration Advisor Tool property targetcloud specifies the type of Oracle Cloud database to which you want to migrate.

Property Description

property type

string

Syntax

-t | --targetcloud cloudtype

Default

DEFAULT indicates a target with no known lockdown profile.

Description

This option is used The Premigration Advisor Tool targetcloud property specifies the type of Cloud database to which you want to migrate. In a configuration file, you can set this value to a different value for each database that you want to check.

Usage Notes

Use to identify the type of cloud to which you are migrating, which affects the kinds of checks performed on the source database.

Option Description

'ATPD'

Oracle Autonomous Database Transaction Processing Dedicated

'ATPS'

Oracle Autonomous Database Serverless

'ADWD'

Oracle Autonomous Data Warehouse Dedicated

'ADWS'

Oracle Autonomous Data Warehouse Serverless.

'DEFAULT'

Use for targets such as Oracle Autonomous Database on Exadata Cloud@Customer or Oracle Autonomous Database Cloud Service, where typically there is no predefined lockdown profile

Examples

./premigration.sh --targetcloud atps --outfileprefix ATPS_RUN_01 --outdir /path/CPAT_output --reportformat TEXT JSON ...

19.9.2.19 username

The Premigration Advisor Tool property username specifies the username to use when connecting to the source database.

Property Description

property type

string

Syntax

-u|--username user-name

Description

The --username switch provides CPAT with the user to connect to the source database.

Usage Notes

The user name you specify must have the SELECT ANY DICTIONARY privilege, and be granted SELECT on SYSTEM.DUM$COLUMNS and SYSTEM.DUM$DATABASE. When connecting to the target database, use the ADMIN user, or another user with the PDB_DBA role.

Examples

premigration --connectstring jdbc:oracle:thin:@example.oracle.com:1521/ORCLPDB1 --username ADMIN -t atps

19.9.2.20 version

The Premigration Advisor Tool property version prints out the current version of CPAT, and then exits.

Property Description

property type

string

Syntax

-v|--version

Description

The Premigration Advisor Tool version property enables you to print out the version number of the Premigration Advisor Tool, and the date it was released.

Usage Notes

Use this option to obtain information about the version of the Preupgrade Advisor Tool that you are running.

Examples

premigration.sh -v
Premigration Advisor Application Version: 22.10.0 (production)
Build date: 2022/10/18 10:55:43
Build hash: 53950fd
premigration.com --version
Premigration Advisor Application Version: 22.10.0 (production)
Build date: 2022/10/18 10:55:43
Build hash: 53950fd

19.9.2.21 updatecheck

The Premigration Advisor Tool property updatecheck prints the current version of CPAT, checks to see if there is a more recent version available, and then exits.

Property Description

property type

string

Syntax

-U | --updatecheck

Default value

None

Description

Checks to see if an updated version of Cloud Premigration Advisor Tool (CPAT) is available. If here is a newer version, it prints yes. If there is not a newer version, it prints no. After completing the checc, CPAT exits. Network access is required for a successful check.

The Premigration Advisor Tool updatecheck property checks Oracle Support to determine if an updated version of Cloud Premigration Advisor Tool (CPAT) is available.

Usage Notes

To use this property, you must have a network connection. If you do not have a network connection, then you receive the error CPAT-4001: Error checking for latest available version of the Cloud Premigration Advisor Tool. If your network is behind a firewall, then this switch must be used with an appropriate HTTPS proxy defined.

Example

export _JAVA_OPTIONS='-Dhttps.proxyHost=www-proxy.us.oracle.com -Dhttps.proxyPort=80'
./premigration.sh --updatecheck

If you already have the latest version of CPAT, then you should see the following output:

Picked up _JAVA_OPTIONS: -Dhttps.proxyHost=www-proxy.us.oracle.com -Dhttps.proxyPort=80There is no newer version available of the Cloud Premigration Advisor Tool