Skip to content
Menu
Alex Zaballa – Oracle Tips and Guides
  • Home
  • About
Alex Zaballa – Oracle Tips and Guides
October 2, 2024March 17, 2025

Starting with CPAT – Cloud Premigration Advisor Tool – Part 1

I’m starting a blog post series about CPAT (Cloud Premigration Advisor Tool). In this series, I’m also planning to cover it for beginners and advanced users.

What is CPAT?

CPAT is a Java-based command line tool that evaluates a source database for suitability of migration to a cloud target. You can use CPAT to gather information about the database even if you are not moving to the cloud and we are also working to improve the amount of information collected.

At a high level, CPAT:

1. Connects to a source database instance

  • The source can be on-premises or in the cloud
  • Can optionally connect to a target database as well

2. Performs a series of checks

  • Validate source database
  • Most checks are relatively simple queries against the data dictionary (You can see the query code)

3. Generates report(s) describing the outcome of those checks

4. Optionally generates SQL “Fixup” scripts for select checks

Oracle Autonomous Database Serverless and Dedicated

If you plan to move your database to Oracle Autonomous Database, you must know some restrictions for these types of services. CPAT will help you to check for any issues you can face while running your database on these services.

  • Oracle Database Features in Autonomous Database on Dedicated Exadata Infrastructure
  • Using Oracle Autonomous Database Serverless

CPAT’s Origin Story

  • Before CPAT was available there were multiple “Schema Advisors” were floating around Oracle
  • Those Advisors were written without strict, software development practices
  • They each generated reports with different results (which tool was “correct”?)
  • Required modifications to the source instance to run (users, grants, created tables)
  • Didn’t generate reports that could be processed programmatically (generated TEXT only)

CPAT’s High-Level Goals/Requirements

  • Have a single source of truth for checking for ADB restrictions
  • Treat the DB as READ ONLY
  • Support integration into other tooling (i.e. ZDM)

What are the various approaches to running CPAT?

  • Download and run CPAT directly (from MOS – Doc ID 2758371.1)
  • Use ZDM which will run CPAT for you and handle fetching properties from the target instance
  • Use DMS which uses ZDM (same as above)
  • Use EM Migration Workbench

CPAT can be downloaded via the note Cloud Premigration Advisor Tool (CPAT) Analyzes Databases for Suitability of Cloud Migration (Doc ID 2758371.1). It does not require installation and does not perform any changes to the database being analyzed (it acts as READ-ONLY).

Please be aware that version 11.2.0.4.8 is not related to the CPAT version or to the version of the Oracle Database you will be running. This number is just a way MOS works in terms of release for this tool.

The current version of CPAT available as of October 2024 is CPAT 24.9.0.

After downloading, copy the .zip file to the database server or any other machine with remote access to the database and with Java 8 or higher.

  • For best results, Oracle recommends using a 64-bit JVM, version 8 or higher

You will be able to check the CPAT version after opening the README.txt file:

Or

./premigration.sh -v

Premigration Advisor Application Version: 24.9.0 (production)
Build date: 2024/09/17 09:04:28
Build hash: c85efb5

CPAT is 100% read-only

  • No new users! No new roles! No new packages! No temporary tables! No writes at all!
  • Earlier ADB Advisors required adding a user/roles/created tables etc. to the source instance

Purpose

Identify issues that may interfere with the migration of the source database to the target.
Each CPAT Check:

  • Looks for the usage of a specific database feature, construct, or setting that either:
    • Is not supported on the desired cloud target
    • Is not supported by the migration method employed
  • Produces a Result
  • May include a list of “Relevant Objects”
    • E.g., a list of tables using multimedia datatypes (such datatypes are not supported on ADB)
    • There may be relevant objects even when a check PASSes and no relevant objects when a check does not PASS
  • Describes what the check looks for, why the check is needed, and helpful “action” information

CPAT currently includes more than 80 possible checks:

  • Only a subset applies to any specific CPAT invocation
  • Checks may be specific to:
    • Target cloud
    • Migration method
    • Schema vs full database

Does CPAT connect to the internet?

CPAT does not connect to the internet unless you use the command line option that instructs CPAT to check to see if an updated version of the app is available.

What Database Versions are Supported by CPAT?

  • CPAT was designed to work with 11g and up (Enterprise Editions)
  • CPAT should work with 10g (we know of no issues currently)
  • CPAT will attempt to work on unsupported versions on a “best effort” basis
Screenshot

Stay tuned for the next post where I will explain a few things you need to know before running the CPAT.

Links to the Complete Blog Post Series about CPAT:

  • FAQ
  • Part 1 – Starting with CPAT
  • Part 2 – Options for Running CPAT
  • Part 3 – Running CPAT
  • Part 4 – Troubleshooting CPAT
  • Part 5 – CPAT Checks
  • Part 6 – CPAT New Features – December – 2024
  • Part 7 – Cloud Premigration Advisor Tool (CPAT) Composer

©2025 Alex Zaballa – Oracle Tips and Guides | Powered by WordPress and Superb Themes!