Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

See: Use the Required deployPackager.properties File

...

Choose the Internal or External Method

  1. First you must decide if you are using the internal or external Ephemeral method.

Create ORCLCDB SYSOPER User

  1. Once that is decided, you will create a user.

...

  1. You must create a new user on

...

  1. Oracle CDB with the

...

  1. associated privileges to create an ephemeral copy for both internal and external methods.

BackupRestoreOracleEphemeralInternalPdb

Internal user privileges:

Code Block
CREATE USER c##liquibase_ephemeral_usersource IDENTIFIED BY password;
GRANT CREATE SESSION TO c##liquibase_ephemeral_usersource CONTAINER=all;
GRANT CREATE PLUGGABLE DATABASE TO c##liquibase_ephemeral_usersource CONTAINER=all;
GRANT SYSOPER TO c##liquibase_ephemeral_usersource CONTAINER=all;

BackupRestoreOracleEphemeralExternalPdb

External user privileges:

On the external database we will create a new user on oracle CDB with the following privileges. This allows us to create an ephemeral copy and additionally create a link with the source database.

Code Block
CREATE USER c##liquibase_ephemeral_sourceexternal IDENTIFIED BY password;
GRANT CREATE SESSION TO c##liquibase_ephemeral_sourceexternal CONTAINER=all;
GRANT SYSOPER TO c##liquibase_ephemeral_sourceexternal CONTAINER=all;
Info

The user name must start with c## to be a correct user type.

c##liquibase_ephemeral_user is just an example value, you can specify any name you would like. This is the user that connects to the ephemeral dbDef.

...

Info

Liquibase recommends creating a dbDef definition in the datical.project but not including this dbDef on any Liquibase pipelines/plans.

...

Methods for creating the Ephemeral dbDef

An ephemeral dbDef must be created in the datical.project file to instruct Liquibase which database should be cloned for the ephemeral copy and to set the connection string information. Because this database is transient by definition and only exists during the Deploy Packager operation, you are not able to run Status against it.

...