Previous Next JavaScript must be enabled to correctly display this content

## 9 Managing Oracle Databases

Manage the Oracle Databases on your Oracle Database Appliance.

Note:

A bigfile tablespace in Oracle database is a tablespace with a single, but very large, up to 4 GB blocks, datafile. Bigfile is the default file size when creating a new tablespace for Oracle Database. All Oracle database tablespaces are bigfile tablespaces.

- About Administrative Groups and Users on Oracle Database Appliance
  Oracle Database Appliance Browser User Interface deployment creates operating system groups and users whose members are granted system administration privileges on the appliance.
- About Data Migration Options for Oracle Database Appliance
  Oracle Database Appliance supports the use of standard Oracle Database loading and migration tools.
- About Creating Database Homes on Oracle ACFS Storage
  When you create new Oracle Database homes, they are created on Oracle ACFS file system which are stored on Oracle Database Appliance storage disks. You can create new Oracle Database homes using the `odacli create-database` or `odacli create-dbhome` commands, or when you patch an existing database home.
- About Standard Edition High Availability for Oracle Database Appliance
  Oracle Database Appliance supports Standard Edition High Availability solution with Oracle Grid Infrastructure that provides cluster-based failover for Oracle Database 19c Standard Edition.
- About Enterprise Edition High Availability for Oracle Database Appliance
  Oracle Database Appliance supports Enterprise Edition High Availability solution with Oracle Grid Infrastructure that provides cluster-based failover for Oracle Database Enterprise Edition.
- Working with Databases
  Use the Browser User Interface to display a list of databases, database details, and create and delete databases. You can use CLI commands to manage your databases.
- Working with Database Homes
  Use the Browser User Interface to display a list of database homes, details, and create and delete database homes.
- Migrating Databases
  Review these topics to learn how to prepare for and migrate an entire database to your Oracle Database Appliance.
- About Managing Multiple Database Instances Using Instance Caging
  Use instance caging to manage your system resources on Oracle Database Appliance.
- Oracle EM Express and DB Console
  You can use Oracle Enterprise Manager Database Express (EM Express), or the Database Control Console (DB Console) to manage your database.

### About Administrative Groups and Users on Oracle Database Appliance

Oracle Database Appliance Browser User Interface deployment creates operating system groups and users whose members are granted system administration privileges on the appliance.

During configuration, two administrative accounts are created for Oracle Database Appliance: the user `grid`, with a user ID (UID) of 1001, and the user `oracle`, with a UID of 1000. The user `grid` is the Oracle Grid Infrastructure installation owner. The user `oracle` is the Oracle Database installation owner, and the owner of all Oracle Database homes (Oracle homes). By default, these users are members of operating system groups whose members are granted privileges to start up and administer Oracle Database and Oracle Automatic Storage Management.

The following table describes the Oracle system privileges groups, and information about the operating system authentication groups:

Table 9-1 Operating System Groups and Users on Oracle Database Appliance

Oracle System Privileges | Group Name | Group ID (GID) | grid is a member | oracle is a member
--- | --- | --- | --- | ---
Oracle Inventory group (OINSTALL) | `oinstall` | 1001 | yes (primary group) | yes (primary group)
OSOPER for dbaoper group | `dbaoper` | 1002 | yes | yes
OSDBA group | `dba` | 1003 | no | yes
OSASM group for Oracle ASM | `asmadmin` | 1004 | yes | no
OSOPER for ASM group | `asmoper` | 1005 | yes | no
OSDBA for ASM group | `asmdba` | 1006 | yes | yes

To change the Group Name and GID from the default values on Oracle Database Appliance bare metal platforms, change the default values from the Browser User Interface during the deployment. If you create an initial database during deployment, then the password for the SYS and SYSTEM users is the password that you set in the Browser User Interface.

To change the Group Name and GID from the default values on the Oracle Database Appliance Virtualized Platform, use the `-advance` parameter with the command `oakcli deploy`. If you create an initial database during deployment, then the password for the SYS and SYSTEM users is the ROOT password from the Configurator.

Note:

Change the password for both users as soon as possible after configuration to prevent unauthorized access to your database using these privileged accounts.

Parent topic: Managing Oracle Databases

### About Data Migration Options for Oracle Database Appliance

Oracle Database Appliance supports the use of standard Oracle Database loading and migration tools.

If you are loading data or migrating data from an existing database to Oracle Database Appliance, then you can use the standard Oracle Database loading and migration tools. These tools include the following:

- Oracle GoldenGate

- SQL*Loader

- Oracle Data Pump

- transportable tablespaces

- RMAN

You can also use the RMAN utility to back up and recover databases on Oracle Database Appliance.

Parent topic: Managing Oracle Databases

### About Creating Database Homes on Oracle ACFS Storage

When you create new Oracle Database homes, they are created on Oracle ACFS file system which are stored on Oracle Database Appliance storage disks. You can create new Oracle Database homes using the `odacli create-database` or `odacli create-dbhome` commands, or when you patch an existing database home.

Oracle Database homes are created on an Oracle ACFS-managed file system. For a database user `oracle`, the new database homes are created under `/u01/app/odaorahome/oracle/`.

The mount `/u01/app/odaorahome` is a shared file system for a high-availability system. On a high-availability system, `/u01/app/odaorahome/` is a shared ORACLE_HOME between the nodes. Existing database homes continue to remain on the local disks.

The ORACLE_BASE location has also changed to an Oracle ACFS-based file system. On high-availability system, the ORACLE_BASE is not shared between the nodes. Each node has its own Oracle ACFS file system for ORACLE_BASE. The new ORACLE_BASE for the database homes are created under the mount `/u01/app/odaorabase/`.

The disk space for the Oracle ACFS file system is located in the DATA or RECO disk group. You must specify the disk group for the Oracle ACFS file system. For Oracle Database Appliance X8-2 hardware model and single-node systems, the Oracle ACFS file system must be located in the DATA disk group. You can specify the initial size of the ORACLE_HOME volume. The default value is 80 GB. You can set a value from 25 GB to 1024 GB. The initial volume size for ORACLE_BASE is fixed at 10GB. Note that for these volumes, AUTOEXTEND is off. You can extend the volume size with the `odacli modify-dbhome-storage` command.

Changes When Provisioning Oracle Database Appliance Release 19.30

As part of the provisioning request, you must specify the disk group and size of the volume in the json file in the sysOraHomeStorage section.

      "sysOraHomeStorage" : {
        "diskgroup" : "DATA",
        "volumeSize" : "80"
      },

If you do not specify the values in the json file, then the following error is displayed during provisioning:

    DCS-10045:Validation error encountered: Missing argument : sysOraHomeStorage

If the values are invalid, then the following errors may be displayed during provisioning:

    DCS-10024:Input parameter 'Disk Group' contains unacceptable value 'DATAL'. Allowed values are '[DATA, RECO]'. (case insensitive)
    DCS-10045:Validation error encountered: Required volumeSize value in sysOraHomeStorage should be in the range of 25GB to 1024GB.

Changes When Patching to Oracle Database Appliance Release 19.30

If you have patched your appliance from Oracle Database Appliance release 19.6 or later to 19.30, then run the `odacli configure-dbhome-storage` command before creating a new database home. Otherwise, the following error is displayed when creating a new database home:

    # odacli create-dbhome -v 19.8.0.0.200714
    DCS-10601:The system is not set up to create database homes on ACFS.

Once the disk group for the volumes are setup, new database homes are created on the Oracle ACFS file system.

odacli configure-dbhome-storage
odacli list-dbhome-storages
odacli describe-dbhome-storage
odacli modify-dbhome-storage
Managing Database Homes on Oracle ACFS Storage

Parent topic: Managing Oracle Databases

### About Standard Edition High Availability for Oracle Database Appliance

Oracle Database Appliance supports Standard Edition High Availability solution with Oracle Grid Infrastructure that provides cluster-based failover for Oracle Database 19c Standard Edition.

About Standard Edition High Availability for Oracle Database 19c

With Standard Edition High Availability, when there is an instance or a node failure, the database automatically fails over to the other node, after attempting to restart on the local node. The database is restarted on the surviving node, thereby providing high availability for Oracle Standard Edition databases.

If your Oracle Database deployment contains Standard Edition 2 Oracle Real Application Cluster (Oracle RAC) databases of releases earlier than 19c, then they must be converted to a Standard Edition High Availability configuration as part of the upgrade to Oracle Database 19c.

For more details about this feature, refer to the Oracle Database Documentation Library at https://docs.oracle.com/en/database/oracle/oracle-database/index.html.

About Standard Edition High Availability for Oracle Database Appliance Release 19.30

Standard Edition High Availability for Oracle Database 19c is supported on Oracle Database Appliance for high availability deployments, that is, deployments that have two server nodes, shared storage, and server interconnects.

Oracle Database Appliance enables automatic configuration for failover at deployment time for Oracle Database 19c Standard Edition single-instance databases. Both nodes have Oracle Homes for Standard Edition single-instance databases.

Single-instance Oracle Database 19c Standard Edition databases created using the ODACLI commands or the Browser User Interface (BUI) have Standard Edition High Availability enabled by default. You can also choose to disable the High Availability option. To enable Standard Edition High Availability for existing Standard Edition Oracle RAC databases of releases earlier than 19c, you must convert these Oracle RAC or Oracle One Node databases to single-instance databases, and then upgrade to single-instance Oracle Database 19c Standard Edition database with Standard Edition High Availability enabled by default.

About Provisioning, Upgrading, and Relocating Standard Edition High Availability Oracle Database

To create a single-instance Oracle Database 19c with Standard Edition High Availability, use the following command:

    odacli create-database -u db_unique_name -n db_name -dh db_home -y SI -g target_node

To upgrade a Standard Edition Oracle RAC Database to Oracle Database 19c Standard Edition, convert the Oracle RAC Database to a single-instance Oracle Database:

    odacli modify-database -in db_name -y single-instance

Then, upgrade the single-instance database to Oracle Database 19c with Standard Edition High Availability as follows:

    odacli upgrade-database -i db_id -to destination_dbhome -ha

To relocate a Standard Edition High Availability Oracle Database from one node to another outside of a failover, use the following command, specifying either the target node or the target host in the command:

    odacli modify-database -in db_name -g target_node

or:

    odacli modify-database -in db_name -th target_host

For detailed information about these ODACLI command options, see the Oracle Database Appliance Command Line Reference chapter in this guide.

Oracle Database Appliance Command-Line Interface

Parent topic: Managing Oracle Databases

### About Enterprise Edition High Availability for Oracle Database Appliance

Oracle Database Appliance supports Enterprise Edition High Availability solution with Oracle Grid Infrastructure that provides cluster-based failover for Oracle Database Enterprise Edition.

About Enterprise Edition High Availability for Oracle Database

With Enterprise Edition High Availability, when there is an instance or a node failure, the database automatically fails over to the other node, after attempting to restart on the local node. The database is restarted on the surviving node, thereby providing high availability for Oracle Enterprise Edition databases.

For more details about this feature, refer to the Oracle Database Documentation Library at https://docs.oracle.com/en/database/oracle/oracle-database/index.html.

About Enterprise Edition High Availability for Oracle Database Appliance Release 19.30

Enterprise Edition High Availability for Oracle Database 19.30 is supported on Oracle Database Appliance for high availability deployments, that is, deployments that have two server nodes, shared storage, and server interconnects.

Oracle Database Appliance enables automatic configuration for failover at deployment time for Oracle Database 19.30 Enterprise Edition single-instance databases. Both nodes have Oracle Homes for Enterprise Edition single-instance databases.

To enable Enterprise Edition High Availability for existing Enterprise Edition Oracle RAC databases of release 19.30, you must convert these Oracle RAC databases to single-instance databases, and then upgrade to single-instance Oracle Database 19.30 Enterprise Edition database with Enterprise Edition High Availability enabled by default.

About Provisioning, Upgrading, and Relocating Enterprise Edition High Availability Oracle Database

To create a single-instance Oracle Database 19.30 with Enterprise Edition High Availability, use the following command:

    odacli create-database -u db_unique_name -n db_name -dh db_home -y SI -g target_node -ha

To upgrade an Enterprise Edition Oracle RAC Database to Oracle Database 19.30 Enterprise Edition, convert the Oracle RAC Database to a single-instance Oracle Database:

    odacli modify-database -in db_name -y single-instance

Then, upgrade the single-instance database to Oracle Database 19.30 with Enterprise Edition High Availability as follows:

    odacli upgrade-database -i db_id -to destination_dbhome -ha

To relocate an Enterprise Edition High Availability Oracle Database from one node to another outside of a failover, use the following command, specifying either the target node or the target host in the command:

    odacli modify-database -in db_name -g target_node

or:

    odacli modify-database -in db_name -th target_host

For detailed information about these ODACLI command options, see the Oracle Database Appliance Command Line Reference chapter in this guide.

Oracle Database Appliance Command-Line Interface

Parent topic: Managing Oracle Databases

### Working with Databases

Use the Browser User Interface to display a list of databases, database details, and create and delete databases. You can use CLI commands to manage your databases.

Note:

Oracle Database Appliance enables unified auditing for databases created in new database homes. Unified audit trail captures audit information and places them in one location and in one format. This consolidated view enables auditors to co-relate audit information from different components. Having a single audit trail also improves management and security of the audit trail. For more information about unified audit trail for Oracle Database, see Oracle Database Security Guide.

- Viewing Databases
  Use the Oracle Appliance Manager Browser User Interface to display a list of Oracle databases and database details, create, upgrade, and delete a database in Oracle Database Appliance.
- Creating a Database Using the Browser User Interface
  Use the Oracle Appliance Manager Browser User Interface to create a database in Oracle Database Appliance.
- Managing Database Homes on Oracle ACFS Storage
  Use the Oracle Appliance Manager Browser User Interface or ODACLI commands to manage database home storage in Oracle Database Appliance.
- Creating a Database Using ODACLI Commands
  Create a database from the command-line interface.
- Cloning a Database from Backup
  Use the Browser User Interface to clone a database from a backup.
- Cloning an Oracle ACFS Database
  Create a database from an existing Oracle ACFS database using ODACLI commands or BUI.
- Modifying a Database
  Use the Oracle Appliance Manager Browser User Interface or ODACLI commands to modify a database in Oracle Database Appliance.
- Moving a Database from One Oracle Home to Another
  Use the Oracle Appliance Manager Browser User Interface or ODACLI commands to move a database from one Oracle home to another of the same database version.
- Upgrading a Database
  Use the Oracle Appliance Manager Browser User Interface to upgrade an Oracle database to a different database home version.
- Upgrading a Database Manually Using AutoUpgrade
  Use AutoUpgrade to manually upgrade an earlier release of Oracle database on Oracle Database Appliance.
- Deleting a Database
  Use the Oracle Appliance Manager Browser User Interface to delete an Oracle database.

Parent topic: Managing Oracle Databases

#### Viewing Databases

Use the Oracle Appliance Manager Browser User Interface to display a list of Oracle databases and database details, create, upgrade, and delete a database in Oracle Database Appliance.

1. Log into the Browser User Interface:
   `https://host name or ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. (Optional) Click the database name, in blue font, to display more details about the database.
4. (Optional) Click Actions next to a database entry to view more details, upgrade or delete the database.

Parent topic: Working with Databases

#### Creating a Database Using the Browser User Interface

Use the Oracle Appliance Manager Browser User Interface to create a database in Oracle Database Appliance.

Ensure that the repository is updated with Oracle RDBMS Clone files for a database version, before creating the database as described in Updating Oracle Database Appliance Repository with Database Clone Files Using the CLI.

Note:

For Standard Edition Oracle Database 19c or later, you cannot create Oracle RAC Or Oracle RAC One Node Database. You can only create single-instance Oracle Database. For Standard Edition Oracle Database 19.6 or later, you can choose to enable high availability for single-instance database. For Enterprise Edition Oracle Database 19.15 or later or Oracle Database 21.6 or later, you can choose to enable high availability for single-instance databases.

The Browser User Interface provides a quick and easy method of creating new databases. The Create New Database page in the Browser User Interface is populated with default options for most of the configuration options. Drop-down lists enable you to quickly view and select from a list of available options. You can use the drop-down list to create a new database Oracle Database Home (ORACLE_HOME) for the database or select an existing ORACLE_HOME that you created earlier.

Oracle Database 19.30 is supported on both Oracle Automatic Storage Management (Oracle ASM) and Oracle ASM Cluster file system (Oracle ACFS). When databases are created in Oracle ACFS, each database is configured with its own Oracle ACFS file system for the datafiles and uses the following naming convention: `/u02/app/db user/oradata/db unique name`. The default size of this mount point is 100 GB.

The fields in the Browser User Interface adjust, depending on the database version you select.

Follow these steps to create a database:

1. Log into the Browser User Interface:
   `https://host-ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Create Database to display the Create Database page.
4. Select Create Database on the Create Database page.
5. Enter the following information on the Database Information page to configure the database:
   1. In the DB Name field, enter a name for the database. The name `db1` appears in the field as an example of a database name, but the field is not populated. You must enter a name.
      The name must contain lowercase alphanumeric characters and cannot exceed 8 characters. The Oracle system identifier (SID) is always set to the database name.
   2. (Optional) In the DB Unique Name field, enter a name to define a unique name for the database.
   3. In the Use Existing DB Home field, select Yes or No.
   4. In the DB Version field, select a database bundle patch number from the drop-down list.
      Available database versions with available clones appear in the list in descending order. Supported versions that are not available in the repository appear in light gray font at the bottom of the list. Search is available for the list. To add a supported version to the repository, download the RDBMS clone file and update the repository.
   5. For the CDB option on Oracle Database releases later than 12.1, select Yes or No, depending on whether or not you want the database to be a container database (CDB). The default is Yes.
   6. In the PDB Name field, enter a name for the pluggable database (PDB).
      Alphanumeric characters and underscore (_) are valid. The name must begin with an alphanumeric character and cannot exceed 30 characters. The name `pdb1` appears in the field in italic text as an example, but it is not populated. You must enter a name.
   7. In the PDB Admin User field, enter a name.
      The field shows `pdbadmin` as an example, you must enter a name. Alphanumeric characters and underscore (_) are valid.
   8. In the Database Edition field, enter the edition for which you have a license, either Enterprise Edition or Standard Edition.
      For Standard Edition Oracle Database 19c or later, you can only create single-instance Oracle Database. For Standard Edition Oracle Database 19.6 or later, you can choose to enable high availability for single-instance database. For Enterprise Edition Oracle Database 19.15 or later or Oracle Database 21.6 or later, you can choose to enable high availability for single-instance databases.
   9. For single-instance Oracle Database deployment, specify the Node, either Node0 or Node1. The default is Node0. Specify whether you want to Enable High Availability.
   10. In the Shape field, select a database shape from the drop-down list. The shape determines the number of cores and total memory allocated to the database. The default is `odb1`.
   11. In the Database Class field, select a database class from the drop-down list. If an option is not available in the list, it is not supported for the database edition on the Oracle Database Appliance or the version that you selected. The default is OLTP.
   12. In the Storage field, select ACFS or ASM from the drop-down list. The default is Oracle ASM.
   13. If the disk group redundancy was set to Flex during the appliance creation, then you can select the Database Redundancy value as Mirror or High.
   14. Select the Networks you want to associate with the database.
   15. Select the CPU Pool Name to associate with the database.
   16. For the Configure EM Express or Configure EM Console option, select Yes or No. The default is No.
       Select Yes to configure the Oracle Enterprise Manager Database Express (EM Express) console for Oracle Database 19.30. Selecting Yes enables you to use the console to manage the database.
   17. In the SYS and PDB Admin User Password field, enter the password for the `SYS`, `SYSTEM`, and`PDB Admin`.
       The password must begin with an alpha character and cannot exceed 30 characters. Quotation marks are not allowed.
   18. In the Confirm Password field, enter the password again to confirm.
   19. In the Characterset field, select an option from the drop-down list. The default is AL32UTF8.
   20. In the National Characterset field, select an option from the drop-down list. The default is AL16UTF16.
   21. In the Language field, select a database language from the drop-down list. The default is American.
   22. In the Territory field, select a territory or location for the database from the drop-down list. The default is America.
6. Click Next.
7. In the TDE Information page, for Oracle Database Enterprise Edition 19c or later, you can choose to enable Transparent Database Encryption (TDE). Select Yes or No in the Enable TDE option. Specify and confirm the TDE Password. By default, the TDE option is disabled.
8. Click Create. When prompted, click Yes to confirm that you want to start the job to create the database.

The job is submitted and a confirmation page appears with a link to the job. Click the link to view the job progress, tasks, and status.

After you close the Job confirmation page, you can click the Activity tab to monitor the job progress. Click the job number to view the tasks and status details. Click Refresh to refresh the page.

Parent topic: Working with Databases

#### Managing Database Homes on Oracle ACFS Storage

Use the Oracle Appliance Manager Browser User Interface or ODACLI commands to manage database home storage in Oracle Database Appliance.

Managing Database Home Storage Using the Browser User Interface

1. Log into the Browser User Interface:

   `https://host-ip-address:7093/mgmt/index.html`

2. Click the Database tab.
3. Click Database Home Storage on the left pane.
4. If Database Home Storage is not configured, then click on the Configure Database Home Storage button.
5. Select the Disk Group Name and specify the Size in GB.
6. Click Create. When prompted, click Yes to confirm that you want to start the job to configure the database home storage.
7. You can also view a list of all Database Home storages from the Database tab and view details for each database.
8. To modify Database Home Storage, select Modify in the Actions drop down list.

Managing Database Home Storage Using ODACLI Commands

1. Use the `odacli configure-dbhome-storage` command to configure the database home storage:

       # odacli configure-dbhome-storage -dg DATA

2. Use the `odacli list-dbhome-storages` command to list the database home storages:

       # odacli list-dbhome-storages

3. Use the `odacli describe-dbhome-storages` command to describe a database home storage:

       odacli describe-dbhome-storage -i 67622ce6-0a00-4fec-b948-7a0ba7922311

   For more information about these command options, see the Oracle Database Appliance Command Line Reference chapter in this guide.

Related Topics

- odacli configure-dbhome-storage
- odacli list-dbhome-storages
- odacli describe-dbhome-storage
- odacli modify-dbhome-storage

Parent topic: Working with Databases

#### Creating a Database Using ODACLI Commands

Create a database from the command-line interface.

Note:

If you provisioned the appliance without creating an initial database, then you must create a Oracle home. If the version of the database home is different from the migrated database, create a database home for the migrated database. You might want to create a database home specifically for the migrated database.

Caution:

When you enable Transparent Data Encryption (TDE) on databases, with software keystore or Oracle Key Vault keystore with endpoints in Oracle Key Vault, you are prompted to set a password for the TDE wallet. Provide a strong password for security compliance. Enter this password carefully when setting it for the first time, and ensure that this password is available to you at all times for database management operations. Failure to provide the TDE wallet password when prompted, will cause an error in accessing encrypted data.

This example creates a new database named `PRODDB` with database version 19.30, and a new database home, if a database home does not exist.

1. Use the `odacli list-dbhomes` command to display a list of database homes and verify that a database home exists for the database version.
   Note the ID if you want to use an existing database home or if you want to get more details. Use the `odacli describe-dbhomes` command to get more details about a specific database home.

       # odacli list-dbhomes
       ID                                   Name               DB Version
       ------------------------------------ -----------------  ----------
       b727bf80-c99e-4846-ac1f-28a81a725df6 OraDB199_home1  19.30.0.0.0

       (continued)
       Home Location
       -----------------------------------------
       /u01/app/orauser/product/19.0.0.0/dbhome_1

2. Create a database home if a database home does not exist for the database version.
   If you want to create a database home for specifically for the migrated database, you can use the `odacli create-dbhome` command, or you can create the database home when you create the database. The example creates a database home for database version 19.30.0.0.0.

       # odacli  create-dbhome -v 19.30.0.0.0

3. Create a database. You can use an existing database home ID or you can create a database home when creating the database.

   To create a database named `PRODDB` that uses an existing database home with ID `b727bf80-c99e-4846-ac1f-28a81a725df6`:

       # odacli create-database -n PRODDB -io -dh b727bf80-c99e-4846-ac1f-28a81a725df6

   To create a database named `PRODDB` with database version `19.30.0.0.0` and a database home:

       # odacli create-database -n PRODDB -v 19.30.0.0.0 -io

   To create a TDE-enabled database named `PRODDB`:

       # odacli create-database -n PRODDB -t

Parent topic: Working with Databases

#### Cloning a Database from Backup

Use the Browser User Interface to clone a database from a backup.

When you backup a database in Oracle Database Appliance, a backup report is created. Save the backup report as a JSON file and you can use the file to create a database on the same appliance, or a different appliance.
The following are the prerequisites to cloning a database from a backup:

1. The source database backup location must be Object Store or External FRA (Network File System).

2. If you use Object Store backup location, then obtain Object Store Credentials for the host.

3. If you use an External FRA (Network File System) backup location, then obtain the Network File System (NFS) mount point location.

4. Create a backup policy using the object store credentials or NFS mount point as the backup destination.

5. Attach the backup policy to the database that you want to backup. If the source database does not have TDE enabled, then providing the Backup Encryption password is mandatory when attaching Objectstore backup policy. However, the Backup Encryption password is optional when attaching the NFS backup policy. If the source database has TDE enabled, then you need not specify the Backup Encryption password, irrespective of backup destination.

6. Create a manual backup of the database and save the backup report generated when the backup completes.

Follow these steps to create a database from backup:

1. Log into the Browser User Interface:
   `https://host-ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Create Database to display the Create Database page.
4. Click Clone Database from Backup, then click Next to display the Clone Database from Backup page.
5. Select the Backup Destination from which you want to create the database. If your backup destination is Object Store:
   1. Select Backup Destination as ObjectStore.
   2. Select your Object Store Credential Name.
   3. Enter the password in the Backup Encryption Passwords field and the Confirm Backup Encryption Passwords field.
   If your backup destination is Network File System (NFS):
   1. Select Backup Destination as External FRA.
   2. Enter the password in the Backup Encryption Passwords field and the Confirm Backup Encryption Passwords field.
6. Click Browse and select the backup report from which you want to create the database.
   When the backup report is loaded, Database Information and TDE Information steps are displayed on different pages and populated based on the backup report. You can edit some of the fields.
   For Standard Edition Oracle Database 19c or later, you cannot clone Oracle RAC or Oracle RAC One Node Database. You can only clone a single-instance Oracle Database. For Standard Edition Oracle Database 19.6 or later, you can choose to enable high-availability for single-instance database. For Enterprise Edition Oracle Database 19.15 or later or Oracle Database 21.6 or later, you can choose to enable high availability for single-instance databases.
7. In the DB Name field, enter a name for the database.
   The name must contain lowercase alphanumeric characters and cannot exceed 8 characters. The Oracle system identifier (SID) is always set to the database name.
8. Enter the password in the SYS and PDB Admin User Password field and the Confirm Password field.
9. Specify the Networks.
10. If your source database has Transparent Database Encryption (TDE) enabled, then you can enable TDE on the cloned database. If the source database has TDE enabled, then the backup report has the TDE wallet backup location and the TDE Wallet Backup Location field in the BUI displays this value. Specify and confirm the TDE Password.
11. You can choose an Oracle Key Vault server configuration from the Select OKV Server Config drop-down list, and specify the OKV Wallet Location.
12. Click Create.
13. Click Yes to confirm that you want to clone a database from the selected Object Store or External FRA.
    When you submit the job, the job ID and a link to the job appears. Click the link to display the job status and details.
14. Validate that the job completed. You can track the job in the Activity tab in the Browser User Interface, or run the command `odacli describe-job` with the job ID.

        # odacli describe-job -i jobId

Parent topic: Working with Databases

#### Cloning an Oracle ACFS Database

Create a database from an existing Oracle ACFS database using ODACLI commands or BUI.

Cloning enables to:

- Create a database from another database without bringing down the source database

- Create multiple databases from a gold image, thus ensuring standardized mass deployments

- Optimize space utilization, by use of Oracle ACFS snapshots in cloning

- Create different types of databases, from a single source database type. For example, you can create single-instance databases, Oracle RAC databases, or Oracle RAC One Node databases from any type of source database

- Depending on the available memory and CPU cores, specify a supported database shape such as `odb1s`, `odb2`, and so on, to create any class of database from any source database.

- Create clone databases on a standby system. Since standby systems are not production systems, they are a better choice for seeding test or development environments.
- Run clone database from a database home that is different from that of the source database.
- Create clone database from a read-only source database.
- Create read-only clone database from any source database.

Following are the prerequisites to clone a database:

- Ensure that Oracle Clusterware is running on all nodes, and the source database is up and running.

- The source database must use Oracle ACFS storage.

- The source database must not be a multitenant container database (CDB).

- The source database must be opened in either read-write mode, or read-only mode if it is a primary database. A standby database can be in mounted or read-only open mode.

- The source database must not be in backup mode.

- The source database must be in archive mode.

- All data files of the source database must be in the same Oracle ACFS directory.

Note:

For Standard Edition Oracle Database 19c or later, you cannot clone Oracle RAC or Oracle RAC One Node Database. You can only clone a single-instance Oracle Database. For Standard Edition Oracle Database 19.6 or later, you can choose to enable high-availability for single-instance database.

Cloning an Oracle ACFS Database Using Command Line Interface

1. Run the `odacli clone-database` command.

       odacli clone-database --databaseUniqueName --dbname --dbshape --dbtype --sourcedbname --associated-networks --cpupool --dbhomeid --disable-ha --enable-ha --newhome --read-only --tdepassword--json

   For cloning, you can create a new database home or select an existing database home. To create a new database home, specify the `--newhome` option. To use an existing database home, specify the `--dbhomeid`. Specify the unique name of the database, the name for the new database, the database shape, the type of database, and the source database name. For TDE-enabled database, also specify the `--tdepassword` option. The TDE password of the new database must be the same as the TDE password of the source database.

   For information about all the command options, see the ODACLI Command Reference chapter.

Cloning an Oracle ACFS Database Using the Browser User Interface

1. Log into the Browser User Interface:
   `https://host-ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Create Database to display the Create Database page.
4. Click Clone a Database, then click Next to display the Clone Database page.
5. In the Clone Database page, you can create a new database home or select an existing database home.
6. To create a new database home, select the Create New DB Home and then provide the values as described in this procedure.
7. To specify an existing database home, select the Source Database Name from which you want to create the database and the DB Home Name.
   For Oracle Database 19c Standard Edition, you can only create single-instance Oracle Database, with or without high-availability. For Standard Edition Oracle Database 19.6 or later, you can choose to enable high-availability for single-instance database. For Enterprise Edition Oracle Database 19.15 or later or Oracle Database 21.6 or later, you can choose to enable high availability for single-instance databases.
8. Select the Database Shape (template) for your new database. The database shape you select determines the total memory allocated to the database.
9. In the DB Name field, enter a name for the database.
   The name must contain lowercase alphanumeric characters and cannot exceed 8 characters. The Oracle system identifier (SID) is always set to the database name.
10. Specify the DB Unique Name for the database. If the database unique name is not provided, then the name of the database is set to the database name.
11. Specify the Networks.
12. Enter the password in the SYS and PDB Admin User Password field and the Confirm Password field. For Transparent Database Encryption (TDE) enabled database, specify the TDE wallet password. The TDE password is the same as the TDE password of the source database.
13. Click Create.
14. Click Yes to confirm that you want to clone a database from the selected source database.
    When you submit the job, the job ID and a link to the job appears. Click the link to display the job status and details.
15. Validate that the job completed. You can track the job in the Activity tab in the Browser User Interface, or run the command `odacli describe-job` with the job ID.

        # odacli describe-job -i jobId

Related Topics

- odacli clone-database

Parent topic: Working with Databases

#### Modifying a Database

Use the Oracle Appliance Manager Browser User Interface or ODACLI commands to modify a database in Oracle Database Appliance.

Modifying a Database Using the Browser User Interface

1. Log into the Browser User Interface:

   `https://host-ip-address:7093/mgmt/index.html`

2. Click the Database tab.
3. For the database that you want to modify, select Modify in the Actions drop down list.
4. In the Modify Database page, you can attach or detach associated networks and backup policy, and modify database shape and class. You can also change TDE wallet management from `EXTERNAL` to `ODA` for Oracle Database 19c and later databases.
5. To modify the Database Class or Database Shape, select the new value in the drop down list.
6. To attach or detach networks, modify the values in the Attach Networks and Detach Networks fields.
7. To remove the associated backup policy from the database, do not select any value in the Select Back up Policy drop down list.
8. If you configured Oracle Flex disk group when you created the database, you can also modify the database redundancy. If the database you are modifying is an Oracle ACFS Database, then the database redundancy for all cloned Oracle ACFS databases is modified.
9. You can choose to change the Backup Encryption Password. If the database has TDE enabled, then the RMAN Backup Encryption password is not used.
10. Note that if the database uses Oracle Key Vault server configuration, then you cannot modify any TDE options.
11. Select the Specify TDE Option to perform these operations:
    - Select Re-key TDE Master Encryption Key to re-key the TDE master encryption key of the database. Specify the Current TDE Wallet password.
    - Select Change Password for TDE Wallet and specify the Current TDE Password and the New TDE Password.
    - If the TDE wallet management is set to `EXTERNAL`, then you can view and select the Change TDE Wallet Management option, and set it to `ODA`.
12. For Enterprise Edition Oracle Database 19.15 or later or Oracle Database 21.6 or later, you can choose to Enable High Availability for single-instance databases.
13. For Standard Edition Oracle Database 19.6 or later, you can choose to Enable High Availability for single-instance databases.
14. Click Modify. When prompted, click Yes to confirm that you want to start the job to modify the database.

Modifying a Database Using ODACLI Commands

1. Use the `odacli modify-database` command to modify the configuration of a database, such as backup configuration, database class, database type, TDE key, or to change the TDE wallet management from `EXTERNAL` to `ODA`.

       # odacli modify-database -s database_shape  -cl database_class -i dbid

   For example:

       # odacli modify-database -i 1941d594-c777-4eca-9fce-18b778d5c153 -s odb2 -cl DSS

   For example, the following command re-keys the TDE master encryption key of the database after accepting the current TDE Wallet password.

       # odacli modify-database -n testdb -rkt
       Enter TDE wallet password:

   For more information about the `odacli modify-database` command options, see the Oracle Database Appliance Command Line Reference chapter in this guide.

Related Topics

- odacli modify-database

Parent topic: Working with Databases

#### Moving a Database from One Oracle Home to Another

Use the Oracle Appliance Manager Browser User Interface or ODACLI commands to move a database from one Oracle home to another of the same database version.

Moving a Database Using the Browser User Interface

1. Log into the Browser User Interface:

   `https://host-ip-address:7093/mgmt/index.html`

2. Click the Database tab.
3. For the database that you want to modify, select Move in the Actions drop down list.
4. Select the Destination Database Home where you want to move the database. The destination database home must be of the same base version. Select Ignore Missing Patches to ignore missing patches. For high-availability environment, you can select the Non-Rolling check box to perform non-rolling move of the database home.
5. Click Move. When prompted, click Yes to confirm that you want to start the job to move the database.

Moving a Database Using ODACLI Commands

1. Use the `odacli move-database` command to move a database from one Oracle home to another home of the same database version.

       # odacli move-database -i database_ID -dh destination_database_home_ID

   For more information about the `odacli move-database` command options, see the Oracle Database Appliance Command Line Reference chapter in this guide.

Related Topics

- odacli move-database

Parent topic: Working with Databases

#### Upgrading a Database

Use the Oracle Appliance Manager Browser User Interface to upgrade an Oracle database to a different database home version.

Before upgrading to a different database home, you must upload the Oracle RDBMS clone files to the repository and create the database home.

Note:

You cannot upgrade Oracle RAC or Oracle RAC One Node Database to a destination database home of Standard Edition Oracle Database 19c or later. You must first convert Oracle RAC Or Oracle RAC One Node Database to single-instance Oracle Database using the `odacli modify-database` command and then upgrade the single-instance Oracle Database to a destination database home of Standard Edition 19c or later.

1. Log into the Browser User Interface:
   `https://host name or ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Actions next to the database that you want, then select Upgrade.
4. Select the destination database home version from the list of available versions for the upgrade.
   When upgrading single-instance Standard Edition Oracle Database 18.9 or later to Standard Edition Oracle Database 19c or later, you can also choose to enable or disable High Availability.
   When upgrading single-instance Enterprise Edition Oracle Database 19.15 or later or Oracle Database 21.6 or later, you can also choose to enable or disable High Availability.
5. You can also change the TDE wallet management option if TDE is enabled for the source database and the TDE Wallet Management is set to External. Select Change TDE Wallet Management to set the TDE Wallet Management to ODA.
6. Click Upgrade.

Parent topic: Working with Databases

#### Upgrading a Database Manually Using AutoUpgrade

Use AutoUpgrade to manually upgrade an earlier release of Oracle database on Oracle Database Appliance.

Starting with Oracle Database Appliance release 19.17, you cannot manage releases of Oracle Database earlier than 19c using ODACLI or BUI. To upgrade Oracle databases of release 12.1, 12.2, and 18c on Oracle Database Appliance, use OPatch to patch the databases or use Oracle Database Upgrade Assistant (DBUA) or AutoUpgrade to upgrade these databases manually with Oracle Database Appliance 19.17 or later.
Ensure the following:

- The Oracle Database Appliance server must be on Oracle Database Appliance release 19.19 or later.
- The repository must be updated with the target database clone version on the source and target Oracle Database Appliance systems.

1. Create the destination DB home for the database:

       #odacli create-dbhome -v 19.18.0.0.230117

       [root@oda1 ~]# odacli list-dbhomes
       ID                                       Name                 DB Version                     DB Edition Home Location                                           Status
       ---------------------------------------- -------------------- ------------------------------ ---------- ------------------------------------------------------- ----------
       f90adcc1-f64a-41ce-b72d-154db155b1fa     OraDB19000_home1     19.18.0.0.230117               EE         /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1    CONFIGURED
       562a7428-9ea7-4878-9005-62c9d732a12b     OraDB12102_home1     12.1.0.2.220719                EE         /u01/app/odaorahome/oracle/product/12.1.0.2/dbhome_1    CONFIGURED

2. Disable SSHCleanerJob and configure SSH user equivalence between both nodes in case of Oracle Database Appliance High-Availability systems.

       [root@oda1 ~]# odacli list-schedules|grep "Name\|SSH"
       ID                                       Name                      Description                                        CronExpression                 Disabled
       44ad4fe2-4893-4c7d-a61c-15845cb74aa5     SSHCleanerJob             SSH cleaner job to clean up stale SSH keys         0 0/30 * 1/1 * ? *             false

       [root@oda1 ~]# odacli modify-schedule -i 44ad4fe2-4893-4c7d-a61c-15845cb74aa5 -d
       Modify job schedule success

       [root@oda1 ~]# odacli list-schedules|grep "Name\|SSH"
       ID                                       Name                      Description                                        CronExpression                 Disabled
       44ad4fe2-4893-4c7d-a61c-15845cb74aa5     SSHCleanerJob             SSH cleaner job to clean up stale SSH keys         0 0/30 * 1/1 * ? *             true

       [oracle@oda1 ~]$ /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/deinstall/sshUserSetup.sh -user oracle -hosts "oda1 oda2" -noPromptPassphrase

3. Create the AutoUpgrade configuration file as the `oracle` operating system user on the first node.

       [oracle@oda1 ~]$ cat autoupgrade.conf
       global.autoupg_log_dir=/u01/app/odaorabase/oracle/autoupgrade
       upg1.dbname=italy
       upg1.start_time=NOW
       upg1.source_home=/u01/app/odaorahome/oracle/product/12.1.0.2/dbhome_1
       upg1.target_home=/u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1
       upg1.sid=italy11
       upg1.log_dir=/u01/app/odaorabase/oracle/autoupgrade/italy
       upg1.upgrade_node=localhost
       upg1.target_version=19
       upg1.run_utlrp=yes
       upg1.timezone_upg=no

4. Change the Fast Recovery Area to Oracle ACFS if the database was created on Oracle ASM.
   1. Verify whether the dbstorage of the database is ACFS or ASM.

          # odacli list-databases

          ID                                       DB Name    DB Type  DB Version           CDB        Class    Shape    Storage    Status        DbHomeID
          ---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ ----------------------------------------
          5c183783-a198-413e-b96e-2c941fe1a895     italy      RAC      12.1.0.2.220719      true       OLTP     odb2     ACFS       CONFIGURED   562a7428-9ea7-4878-9005-62c9d732a12b
          8f90d26d-c17a-45e3-abbc-67c981c24a3f     hun        RAC      19.18.0.0.230117     true    OLTP     EE       odb1     ASM      CONFIGURED   f90adcc1-f64a-41ce-b72d-154db155b1fa

          [root@oda1 ~]# odacli list-dbhomes
          ID                                       Name                 DB Version                     DB Edition Home Location                                           Status
          ---------------------------------------- -------------------- ------------------------------ ---------- ------------------------------------------------------- ----------
          f90adcc1-f64a-41ce-b72d-154db155b1fa     OraDB19000_home1     19.18.0.0.230117               EE         /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1    CONFIGURED
          562a7428-9ea7-4878-9005-62c9d732a12b     OraDB12102_home1     12.1.0.2.220719                EE         /u01/app/odaorahome/oracle/product/12.1.0.2/dbhome_1    CONFIGURED

          [oracle@oda1 ~]$ export ORACLE_HOME=/u01/app/odaorahome/oracle/product/12.1.0.2/dbhome_1
          [oracle@oda1 ~]$ export PATH=$ORACLE_HOME/bin:$PATH
          [oracle@oda1 ~]$ export ORACLE_SID=italy1
          [oracle@oda1 ~]$ sqlplus / as sysdba

          SQL> show parameter db_recovery_file_dest

          ACFS:

          NAME                     TYPE     VALUE
          ------------------------------------ ----------- ------------------------------
          db_recovery_file_dest             string     /u03/app/oracle/fast_recovery_area/
          db_recovery_file_dest_size         big integer 53862M

          ASM:

          NAME                     TYPE     VALUE
          ------------------------------------ ----------- ------------------------------
          db_recovery_file_dest             string     +RECO(FG$FILEGROUP_TEMPLATE_MIRROR)
          db_recovery_file_dest_size         big integer 200G

   2. If the dbstorage is ASM, then create a vmstorage temporarily or use an existing one and create with a slightly larger size than `db_recovery_file_dest_size`.

          [root@oda1 ~]# odacli create-vmstorage -n tempfra -r mirror -s 250G
          [root@oda1 ~]# odacli list-vmstorages
          Name                  Disk group       Volume name      Volume device                   Size        Used        Used %      Available   Mount Point                          Created                   Updated
          --------------------  ---------------  ---------------  ------------------------------  ----------  ----------  ----------  ----------  -----------------------------------  ------------------------  ------------------------
          tempfra               DATA             TEMPFRA          /dev/asm/tempfra-18             250.00 GB   1.09 GB     0.44%       248.91 GB   /u05/app/sharedrepo/tempfra          2023-04-18 19:05:55 CEST  2023-04-18 19:05:55 CEST

   3. Create a folder on the vmstorage and change ownership of the folder to `oracle:dba`.

          [root@oda1 ~]# mkdir /u05/app/sharedrepo/tempfra/italy
          [root@oda1 ~]# chown oracle:dba /u05/app/sharedrepo/tempfra/italy

   4. Change `db_recovery_file_dest` to ACFS.

          SQL> alter system set db_recovery_file_dest='/u05/app/sharedrepo/tempfra/italy/' scope=both;

5. Run prechecks and review the findings.

       [oracle@oda1 ~]$ /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/jdk/bin/java -jar /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/autoupgrade.jar -config ~/autoupgrade.conf -mode analyze
       AutoUpgrade 22.4.220712 launched with default internal options
       Processing config file ...
       +--------------------------------+
       | Starting AutoUpgrade execution |
       +--------------------------------+
       1 CDB(s) plus 2 PDB(s) will be analyzed
       Type 'help' to list console commands
       upg> Job 100 completed
       ------------------- Final Summary --------------------
       Number of databases            [ 1 ]

       Jobs finished                  [1]
       Jobs failed                    [0]

       Please check the summary report at:
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.html
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.log

6. Run AutoUpgrade in fixup mode to fix issues that could prevent a successful upgrade (if any).

       [oracle@oda1 ~]$ /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/jdk/bin/java -jar /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/autoupgrade.jar -config ~/autoupgrade.conf -mode fixups
       AutoUpgrade 22.4.220712 launched with default internal options
       Processing config file ...
       +--------------------------------+
       | Starting AutoUpgrade execution |
       +--------------------------------+
       1 CDB(s) plus 2 PDB(s) will be processed
       Type 'help' to list console commands
       upg> Job 101 completed
       ------------------- Final Summary --------------------
       Number of databases            [ 1 ]

       Jobs finished                  [1]
       Jobs failed                    [0]

       Please check the summary report at:
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.html
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.log

7. Re-run prechecks and review the findings.

       [oracle@oda1 ~]$ /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/jdk/bin/java -jar /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/autoupgrade.jar -config ~/autoupgrade.conf -mode analyze
       AutoUpgrade 22.4.220712 launched with default internal options
       Processing config file ...
       +--------------------------------+
       | Starting AutoUpgrade execution |
       +--------------------------------+
       1 CDB(s) plus 2 PDB(s) will be analyzed
       Type 'help' to list console commands
       upg> Job 102 completed
       ------------------- Final Summary --------------------
       Number of databases            [ 1 ]

       Jobs finished                  [1]
       Jobs failed                    [0]

       Please check the summary report at:
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.html
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.log

8. Upgrade the database.

       [oracle@oda1 ~]$ /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/jdk/bin/java -jar /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/autoupgrade.jar -config ~/autoupgrade.conf -mode deploy

       AutoUpgrade 22.4.220712 launched with default internal options
       Processing config file ...
       +--------------------------------+
       | Starting AutoUpgrade execution |
       +--------------------------------+
       1 CDB(s) plus 2 PDB(s) will be processed
       Type 'help' to list console commands

       upg> Job 103 completed
       ------------------- Final Summary --------------------
       Number of databases            [ 1 ]

       Jobs finished                  [1]
       Jobs failed                    [0]
       Jobs restored                  [0]
       Jobs pending                   [0]

       ---- Drop GRP at your convenience once you consider it is no longer needed ----
       Drop GRP from italy1: drop restore point AUTOUPGRADE_9212_ROME121020

       Please check the summary report at:
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.html
       /u01/app/odaorabase/oracle/autoupgrade/cfgtoollogs/upgrade/auto/status/status.log

       Note: once you confirmed that database was running as expected from all perspective and downgrade surely would not be needed, drop the restore point which was created by AutoUpgrade tool as the output also instructed

       ---- Drop GRP at your convenience once you consider it is no longer needed ----
       Drop GRP from italy1: drop restore point AUTOUPGRADE_9212_ROME121020

9. Enable SSHCleaner job and remove SSH user equivalence in case of Oracle Database Appliance high-availability system.

       [root@oda1 ~]# odacli list-schedules|grep "Name\|SSH"
       ID                                       Name                      Description                                        CronExpression                 Disabled
       44ad4fe2-4893-4c7d-a61c-15845cb74aa5     SSHCleanerJob             SSH cleaner job to clean up stale SSH keys         0 0/30 * 1/1 * ? *             true

       [root@oda1 ~]# odacli modify-schedule -i 44ad4fe2-4893-4c7d-a61c-15845cb74aa5 -e
       Modify job schedule success

       [root@oda1 ~]# odacli list-schedules|grep "Name\|SSH"
       ID                                       Name                      Description                                        CronExpression                 Disabled
       44ad4fe2-4893-4c7d-a61c-15845cb74aa5     SSHCleanerJob             SSH cleaner job to clean up stale SSH keys         0 0/30 * 1/1 * ? *             false

       Remove local and remote node from /home/oracle/.ssh/authorized_keys files on both nodes as oracle OS user using "vi" command

       [oracle@oda1 ~]$ vi /home/oracle/.ssh/authorized_keys
       [oracle@oda2 ~]$ vi /home/oracle/.ssh/authorized_keys

       Remove all id* files under /home/oracle/.ssh as oracle OS user on both nodes

       [oracle@oda1 ~]$ rm /home/oracle/.ssh/id*
       [oracle@oda2 ~]$ rm /home/oracle/.ssh/id*

10. Sync up the DCS metadata of the database.

        [root@oda1 ~]# odacli list-dbhomes
        ID                                       Name                 DB Version                     DB Edition Home Location                                           Status
        ---------------------------------------- -------------------- ------------------------------ ---------- ------------------------------------------------------- ----------
        f90adcc1-f64a-41ce-b72d-154db155b1fa     OraDB19000_home1     19.18.0.0.230117               EE         /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1    CONFIGURED
        562a7428-9ea7-4878-9005-62c9d732a12b     OraDB12102_home1     12.1.0.2.220719                EE         /u01/app/odaorahome/oracle/product/12.1.0.2/dbhome_1    CONFIGURED

        [root@oda1 ~]# odacli list-databases
        ID                                       DB Name    DB Type  DB Version           CDB     Class    Edition  Shape    Storage  Status       DB Home ID
        ---------------------------------------- ---------- -------- -------------------- ------- -------- -------- -------- -------- ------------ ----------------------------------------
        222a1d47-24ea-4a00-82f0-20d7fe17f59e     italy    RAC      12.1.0.2.220719      true    OLTP     EE       odb2     ACFS     CONFIGURED   562a7428-9ea7-4878-9005-62c9d732a12b

        [root@oda1 ~]# odacli describe-dbstorage -n italy|grep DBUnique

                  DBUnique Name: rome

        [root@oda1 ~]# odacli update-registry -n db -u rome

        Job details
        ----------------------------------------------------------------
                             ID:  fc54b821-c407-4174-8a1a-c90ba66e6cd2
                    Description:  Discover Components : db
                         Status:  Created
                        Created:  April 18, 2023 12:04:55 PM CEST
                        Message:

        [root@oda1 ~]# odacli describe-job -i fc54b821-c407-4174-8a1a-c90ba66e6cd2

        Job details
        ----------------------------------------------------------------
                             ID:  fc54b821-c407-4174-8a1a-c90ba66e6cd2
                    Description:  Discover Components : db
                         Status:  Success
                        Created:  April 18, 2023 12:04:55 PM CEST
                        Message:

        Task Name                                Node Name                 Start Time                          End Time                            Status
        ---------------------------------------- ------------------------- ----------------------------------- ----------------------------------- ----------
        Discover DBHome                          oda1                April 18, 2023 12:05:01 PM CEST     April 18, 2023 12:05:04 PM CEST     Success
        Discover DBHome                          oda1                April 18, 2023 12:05:04 PM CEST     April 18, 2023 12:05:07 PM CEST     Success
        Discover DB: rome                       oda1                April 18, 2023 12:05:09 PM CEST     April 18, 2023 12:05:20 PM CEST     Success

        [root@oda1 ~]# odacli list-databases
        ID                                       DB Name    DB Type  DB Version           CDB     Class    Edition  Shape    Storage  Status       DB Home ID
        ---------------------------------------- ---------- -------- -------------------- ------- -------- -------- -------- -------- ------------ ----------------------------------------
        222a1d47-24ea-4a00-82f0-20d7fe17f59e     italy    RAC      19.18.0.0.230117     true    OLTP     EE       odb2     ACFS     CONFIGURED   f90adcc1-f64a-41ce-b72d-154db155b1fa

11. If you edited db_recovery_file_dest in step 4, then revert the change.

        [oracle@oda1 ~]$ export ORACLE_HOME=/u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1
        [oracle@oda1 ~]$ export PATH=$ORACLE_HOME/bin:$PATH
        [oracle@oda1 ~]$ export ORACLE_SID=italy1
        [oracle@oda1 ~]$ sqlplus / as sysdba

        SQL> alter system set db_recovery_file_dest='+RECO(FG$FILEGROUP_TEMPLATE_MIRROR)' scope=both;

12. Take a full backup.

        [oracle@oda1 ~]# odacli create-backup -n italy -bt Regular-L0

13. Remove the temporary vmstorage.

        [oracle@oda1 ~]# odacli delete-vmstorage -n tempfra

Parent topic: Working with Databases

#### Deleting a Database

Use the Oracle Appliance Manager Browser User Interface to delete an Oracle database.

1. Log into the Browser User Interface:
   `https://host name or ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Actions next to the database that you want, then select Delete.
4. In the Confirmation dialog, select Force Delete to force the deletion and then click OK to confirm the action.

Parent topic: Working with Databases

### Working with Database Homes

Use the Browser User Interface to display a list of database homes, details, and create and delete database homes.

- About Managing Multiple Oracle Homes on Oracle Database Appliance
  Create and manage one or more Oracle home directories and Oracle databases on Oracle Database Appliance.
- Viewing Database Homes
  Use the Browser User Interface to display a list of database homes and database home details, including databases associated with a DB home.
- Creating a Database Home
  Use the Browser User Interface to create database homes in Oracle Database Appliance.
- Deleting a Database Home
  Use the Browser User Interface to delete an Oracle database home.

Parent topic: Managing Oracle Databases

#### About Managing Multiple Oracle Homes on Oracle Database Appliance

Create and manage one or more Oracle home directories and Oracle databases on Oracle Database Appliance.

Oracle home is the directory in which you install Oracle Database binaries, and from which Oracle Database runs. Oracle Database Appliance supports multiple Oracle homes, including support of different release Oracle Database homes. You can create multiple Oracle databases on a given Oracle home. Use Oracle Appliance Manager Browser User Interface to create and manage multiple Oracle homes and databases on Oracle Database Appliance. Oracle Database Appliance Manager automatically creates an Oracle Database Oracle home that is compliant with Oracle’s Optimal Flexible Architecture (OFA) standards.

Check the Oracle Database Appliance Release Notes to obtain information about the specific Oracle software releases supported for your Oracle Database Appliance platform.

When you use ODACLI commands to create multiple homes on Oracle Database Appliance, the commands start the Oracle Home cloning process. In Oracle Database Appliance deployments, the user `oracle` is the default software installation owner.

You can use the Browser User Interface or the command-line interface to create and manage databases.

Use ODACLI commands to create, list, describe, and delete databases on Oracle Database Appliance. The `odacli create-database` command enables you to create a database with minimal user input. When you run this command without any additional options, the command creates a new database home (ORACLE_HOME). You can create a database in an existing home by using the `--dbhomeid` option. To find the dbhomeid, use the `odacli list-dbhomes` command.

Alternatively, you can use the Browser User Interface to create list, describe and delete databases and database homes. You can display a list of all Database Homes that includes the database home name, ID, version, the date and time that the database home was created and the location on the same page. You can also create and delete database homes on the Browser User Interface.

Caution:

Do not apply Oracle Database patches directly to Oracle Databases on Oracle Database Appliance. Only use Oracle Database Appliance patch bundles, which are tested to work across the whole software stack. If a one-off database patch is required, it may be applied to the Oracle Home. When you apply the Oracle Database Appliance patch bundle, it may cause a conflict during future patching events and you might need to roll back and then re-apply the patch.

Parent topic: Working with Database Homes

#### Viewing Database Homes

Use the Browser User Interface to display a list of database homes and database home details, including databases associated with a DB home.

1. Log in to the Browser User Interface:
   `https://ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Database Home on the left menu to view all database homes. The name, ID, version, location and date and time stamp of when the database home was created appears on the page.
4. (Optional) Click Actions next to a database home entry, then View Databases to see the databases that are associated with the database home.

Parent topic: Working with Database Homes

#### Creating a Database Home

Use the Browser User Interface to create database homes in Oracle Database Appliance.

Before you can create a database home, the Oracle Database Appliance RDBMS Clone file image must be in the repository. Follow these steps to create a database home:

1. Log in to the Browser User Interface:
   `https://ip-address:7093/mgmt/index.html`
2. Click the Database tab, then click Database Home.
3. Click Create Database Home.
4. Select a database version from the list of available versions, then select the database edition, either Enterprise Edition or Standard Edition, per your licensing agreement.
5. Click Create. When prompted, click Yes to confirm that you want to start the job.

Parent topic: Working with Database Homes

#### Deleting a Database Home

Use the Browser User Interface to delete an Oracle database home.

You can delete a database home (DB Home) if it is not associated with any databases.

1. Log into the Browser User Interface:
   `https://host name or ip-address:7093/mgmt/index.html`
2. Click the Database tab.
3. Click Database Home on the left menu to view all database homes. The name, ID, version, location and date and time stamp of when the database home was created appears on the page.
4. Click Actions next to a database home entry, then Delete, and then confirm the action to delete a database home.

Parent topic: Working with Database Homes

### Migrating Databases

Review these topics to learn how to prepare for and migrate an entire database to your Oracle Database Appliance.

- About Migrating Databases
  You can migrate an entire active container database (CDB) or non-CDB database to an Oracle Database Appliance machine by using the RMAN duplicate command.
- Configuring a Static Listener
  Configure a static listener before you duplicate a database.
- Migrating a Database
  Use the `RMAN Duplicate` command to migrate the entire database to the appliance.
- Registering a Database
  Use the `odacli register-database` command to register the migrated database with the appliance.

Parent topic: Managing Oracle Databases

#### About Migrating Databases

You can migrate an entire active container database (CDB) or non-CDB database to an Oracle Database Appliance machine by using the RMAN duplicate command.

When using RMAN Duplicate, ensure to have network connectivity from source and target databases:

- Source database: The existing database to be migrated.

- Target database: The new database created on an Oracle Database Appliance environment.

If you do not have network connectivity between the source and the target environments, you can use the offline migration method. Offline migration uses RMAN backup sets for duplication, which does not require connectivity to the primary database.

At a high level, the procedure involves the following steps:

1. Deploy or update Oracle Database Appliance to the latest version.

   Confirm that the provisioning completed successfully. On bare metal systems, use the command `odacli list-jobs` and the command `odacli describe-job` to verify the status.

2. Create an instance only database from the command-line interface.

   - On bare metal systems, use the command `odacli create-database` with the `instanceonly` flag on an Oracle Database Appliance machine. The new database is the target database.

   Creating an instance only database also creates the following:

   - ACFS Filesystem used to store the database files

   - Directory structures that are required by the database instance/rman duplicate command

   - Password file for the SYS user

3. Configure a static listener.

4. Migrate the existing database to the target database using the backup and restore operations.

5. Register the migrated database with the appliance.

Note:

You can only migrate and register a database of the same storage type. For example, to migrate and register an Oracle ACFS database, you must create an Oracle ACFS database and then migrate and register it. Similarly, to to migrate an Oracle ASM database, you must create an Oracle ASM database and then migrate it.

Parent topic: Migrating Databases

#### Configuring a Static Listener

Configure a static listener before you duplicate a database.

The static listener is only required when using RMAN Duplicate command.

Perform the following steps to manually configure the `listener.ora` file:

1. Log in as a grid user.
2. Navigate to `/u01/app/19.0.0.0/grid/network/admin`/ directory.
3. Edit the default `listener.ora` file and append the static database entry.

       SID_LIST_LISTENER=
          (SID_LIST=
             (SID_DESC=
                (GLOBAL_DBNAME=db_unique_name with domain)
                (ORACLE_HOME=db home)
                (SID_NAME=db unique name)
                 (ENVS="TNS_ADMIN=database home/network/admin"))
        )

   For example, the following file is edited for an 19.30.0.0.0 database named `PRODDB` in the `example.com` domain:

       SID_LIST_LISTENER=
        (SID_LIST=
           (SID_DESC=
             (GLOBAL_DBNAME=PRODDB.example.com)
              (ORACLE_HOME=/u01/app/oracle/product/19.0.0.0/dbhome_2)
              (SID_NAME=PRODDB)
                   (ENVS="TNS_ADMIN=/u01/app/oracle/product/19.0.0.0/
       dbhome_2/network/admin"))
        )

4. Save the file.
5. Restart the listener.

       srvctl stop listener -l listener
       srvctl start listener -l listener

Parent topic: Migrating Databases

#### Migrating a Database

Use the `RMAN Duplicate` command to migrate the entire database to the appliance.

Before migrating the database, verify that a network connection exists between the source and destination databases.

1. Verify that the `sysdba` connection to the auxiliary database is working. Use the password that you defined when you created the database with the `--instanceonly` flag.

       sqlplus sys/password@hostname:PORT/GLOBAL_DBNAME as sysdba << EOF
       select 1 from dual;
       exit;
       EOF

   The following example uses the Welcome_12 password for myhost on port 1521 for PRODDB.example.com.

       sqlplus sys/Welcome_12@myhost:1521/PRODDB.example.com as sysdba << EOF
       select 1 from dual;
       exit;
       EOF

2. As oracle user, set the ORACLE_HOME and ORACLE_SID environment variables.

       ORACLE_HOME=path of Oracle Home against which the AUX DB is created
       ORACLE_SID=database unique name

3. Display a list of all database storage configured on the appliance and database storage identifiers (ID).

   Use the `odacli list-dbstorages` to display the storage IDs for all configured filesystems.

       # odacli list-dbstorages
       ID Type                               DBUnique  Name         Status
       ------------------------------------  --------  ----------- ----------
       68d13446-f26c-49ee-ab75-a393732aa88a   Asm       rdb1       Configured
       ff2023d9-338d-4cff-8bb4-e73a89e32ce4   Acfs      PRODDB     Configured

4. Display the database storage details, including the DATA, RECO and REDO locations, for each database storage ID.

   For example, use the `odacli describe-dbstorage` command to display information about the ACFS storage for ID 9fe39332-cc1a-4b4b-8393-165524a6ef6b.

       # odacli describe-dbstorage -i ff2023d9-338d-4cff-8bb4-e73a89e32ce4
       DBStorage details
       ----------------------------------------------------------------
       ID: ff2023d9-338d-4cff-8bb4-e73a89e32ce4
       DB Name: PRODDB
       DBUnique Name: PRODDB
       DB Resource ID: c5b77384-634e-4dc8-b10b-fa2831d2c59b
       Storage Type: Acfs
       DATA Location: /u02/app/oracle/oradata/PRODDB
       RECO Location: /u03/app/oracle/fast_recovery_area/
       REDO Location: /u03/app/oracle/redo/
       State: ResourceState(status=Configured)
       Created: June 22, 2019 12:07:12 PM SGT
       UpdatedTime: June 22, 2019 12:26:39 PM SGT

5. Duplicate the database.
   Use the RMAN duplicate database command to duplicate the database.

       rman target sys/Welcome__12@source database hostname:PORT
       (Continued)
       /Service Name auxiliary sys/Welcome_12@Hostname of the target database:1521/service name
       RUN {
       SET NEWNAME FOR DATABASE TO NEW;
       duplicate target database to PRODDB from active database
       SPFILE
       SET cluster_database 'false'
       SET audit_file_dest '/u01/app/oracle/admin/PRODDB/adump'
       SET db_create_file_dest '/u02/app/oracle/oradata/PRODDB'
       SET db_create_online_log_dest_1 '/u03/app/oracle/redo'
       SET db_recovery_file_dest '/u03/app/oracle/fast_recovery_area'
       SET control_files '/tmp/control_PRODDB.ctl' nofilenamecheck;
       }

Parent topic: Migrating Databases

#### Registering a Database

Use the `odacli register-database` command to register the migrated database with the appliance.

The `dbclass`, `dbshape`, `servicename` and password are mandatory for registering the database. The `dbclass` and `dbshape` determine the `sga_target` and `pga_target` settings. The database `init.ora` parameters are reset as part of the `odacli register-database` command. Review the `init.ora` parameters after registration and ensure that the parameters set correctly.

Follow these steps to register a database:

1. Ensure that the `sqlpatches` are in the Oracle Database Appliance environment. If the patches are not in the environment, copy the`$OH/sqlpatch` directories from the source database home to the `$OH` in Oracle Database Appliance before executing the `odacli register-database` command
   The `odacli register-database` command invokes the `datapatch` utility for applying the post patch SQLs. If the source database has any `sqlpatches` applied that are not present in the Oracle Database Appliance environment, then the `datapatch` will fail.
2. Register the database with Oracle Database Appliance.

       # odacli register-database -c OLTP -s odb1 -sn example_service
       Enter SYS, SYSTEM and PDB Admin user password:
       Retype SYS, SYSTEM and PDB Admin user password:
       {
         "jobId" : "317b430f-ad5f-42ae-bb07-13f053d266e2",
         "status" : "Created",
         "message" : null,
         "reports" : [ ],
         "createTimestamp" : "August 08, 2021 05:55:49 AM EDT",
         "description" : "Database service registration with
                          db service name: example_service",
         "updatedTime" : "August 08, 2018 05:55:49 AM EDT"
       }
       # odacli describe-job -i "317b430f-ad5f-42ae-bb07-13f053d266e2"

       Job details
       ----------------------------------------------------------------
                   ID: 317b430f-ad5f-42ae-bb07-13f053d266e2
          Description: Database service registration with
                    db service name: example_service
               Status: Success
              Created: August 08, 2018 5:55:49 AM EDT
              Message:

       Task Name                       Start Time
       ----------------------------- ------------------------------
       restore control file           August 08, 2018 5:55:49 AM EDT
       move spfile to right location  August 08, 2018 5:56:08 AM EDT
       register DB with clusterware   August 08, 2018 5:56:13 AM EDT
       reset db parameters            August 08, 2018 5:57:05 AM EDT
       Running DataPatch              August 08, 2018 5:57:36 AM EDT

       (Continued)
         End Time                     Status
       ------------------------------- --------
       August 08, 2018 5:56:08 AM EDT   Success
       August 08, 2018 5:56:13 AM EDT   Success
       August 08, 2018 5:57:05 AM EDT   Success
       August 08, 2018 5:57:36 AM EDT   Success
       August 08, 2018 5:57:49 AM EDT   Success

3. Use the `odacli list-databases` command to view the registered database.

Parent topic: Migrating Databases

### About Managing Multiple Database Instances Using Instance Caging

Use instance caging to manage your system resources on Oracle Database Appliance.

Oracle Database provides a method for managing CPU allocations on a multi-CPU server that runs multiple database instances. This method is called instance caging. Instance caging uses an initialization parameter to limit the number of CPUs that an instance can use simultaneously.

Instance caging and Oracle Database Resource Manager (the Resource Manager) work together to support your desired service levels across multiple instances. Consolidation can minimize idle resources, maximize efficiency, and lower costs.

Oracle Database Appliance templates are already tuned for the size of each database instance workload. They are designed to run on a specific number of cores. Instance caging ensures that each database workload is restricted to the set of cores allocated by the template, enabling multiple databases to run concurrently with no performance degradation, up to the capacity of Oracle Database Appliance. You can select database template sizes larger than your current needs to provide for planned growth.

Note:

Oracle strongly recommends that you use the Oracle Database Appliance templates, because they implement best practices and are configured specifically for Oracle Database Appliance.

The Oracle Database Appliance Manager interface refers to the database sizing templates as database classes.

By default, instance caging is not enabled on Oracle Database Appliance. To enable instance caging, set the initialization parameter, `RESOURCE_MANAGER_PLAN`, for each database on Oracle Database Appliance. The parameter specifies the plan to be used by the Resource Manager for the current instance. Setting this parameter directs the Resource Manager to allocate core resources among databases. If a plan is not specified with this parameter, then the Resource Manager and instance caging are not enabled.

Instance caging allocation of core resources is enabled in accordance with the Oracle Database Appliance database template size that you select for each database. The `CPU_COUNT` initialization parameter is set in the template. Use the `CPU_COUNT` setting that matches the size of each database to consolidate, and follow the standard instructions for configuring instance caging.

Parent topic: Managing Oracle Databases

### Oracle EM Express and DB Console

You can use Oracle Enterprise Manager Database Express (EM Express), or the Database Control Console (DB Console) to manage your database.

The EM Express console is available for supported releases of Oracle Database. The consoles are web-based tools for managing Oracle Databases.

The EM Express console provides the following features:

- Support for basic administrative tasks, such as storage and user management

- Comprehensive solutions for performance diagnostics and tuning

- Performance advisors in a graphic user interface

- Oracle Database utilities in a graphic user interface, such as SQL*Loader and Oracle Recovery Manager (RMAN)

EM Express is built inside the database server and cannot perform actions outside the database.

Parent topic: Managing Oracle Databases