Using Oracle Data Guard in Exadata Cloud Service

When creating an Oracle Database Exadata Cloud Service database deployment, you can create an Oracle Data Guard configuration.

Oracle Data Guard enables Oracle databases to survive disasters and data corruptions by providing a comprehensive set of services that create, maintain, manage, and monitor a standby database. Oracle Data Guard maintains the standby database as a copy of the primary database. If the primary database becomes unavailable because of a planned or an unplanned outage, you can switch the standby database to the primary role, minimizing the downtime associated with the outage.

About Oracle Data Guard in Exadata Cloud Service

In general, an Oracle Data Guard configuration contains one primary database, which is the database that is accessed by most of your applications, and up to thirty standby destinations, connected by Oracle Net Services. However, the Oracle Data Guard configuration in Exadata Cloud Service specifically includes one primary database and one standby database.

A standby database is a transactionally consistent copy of the primary database. Once created, Oracle Data Guard automatically maintains each standby database by transmitting redo data from the primary database and then applying the redo to the standby database. In an Oracle Data Guard configuration on Exadata Cloud Service, the standby database is a physical standby database. A physical standby database provides a physically identical copy of the primary database, with on-disk database structures that are identical to the primary database on a block-for-block basis. A physical standby database is kept synchronized with the primary database, through Redo Apply, which recovers the redo data received from the primary database and applies the redo to the physical standby database.

See "Oracle Data Guard Configurations" in Oracle Data Guard Concepts and Administration for Release 18, 12.2, 12.1 or 11.2 for additional information.

Exadata Cloud Service also includes Oracle Active Data Guard. Oracle Active Data Guard provides read-only access to the physical standby database while it is synchronized with the primary database, enabling minimal latency between reporting and transactional data. With the Oracle Active Data Guard feature known as real-time query, Redo Apply can be active while the physical standby database is open, thus allowing queries to return results that are identical to what would be returned from the primary database. See "Opening a Physical Standby Database" in Oracle Data Guard Concepts and Administration for Release 18, 12.2, 12.1 or 11.2 for additional information about real-time query.

Before You Create an Oracle Data Guard Configuration

Before you create a database deployment that uses an Oracle Data Guard configuration, you must ensure that both the primary and the standby sites are configured to enable the network communication that is required for Oracle Data Guard.

In summary, network traffic must be able to flow:

  • Between both sites (primary and standby).

  • In both directions (inbound and outbound at each site).

  • On both the administration network (if available) and the client network, and across all combinations (client-to-client, administration-to-administration, client-to-administration, and administration-to-client).

  • On both the SSH port (22) and the Oracle Net Services port (1521).

How you specifically enable the network communication that is required for Oracle Data Guard depends on the configuration of the primary and the standby service instances:

  • If the Exadata Cloud Service instances use IP Networks, then you must specifically configure your IP network definitions to enable an Oracle Data Guard configuration. See Configuring IP Networks for Oracle Data Guard.

  • If the service instances are not configured to use IP networks, but the instance-level action menu (Menu icon) in the Service Details page for each service instance contains the Manage Security Groups option, then the service instances are configured to use self-service firewall functionality that is native to Exadata Cloud Service. If the service instances use self-service firewall functionality, then you must create the security rules to enable cross-site communications. See Using the Exadata Cloud Service Self-Service Firewall.

  • Otherwise, the service instances use the Oracle-managed firewall, and you must submit a Service Request to Oracle Support to enable the network communication that is required for Oracle Data Guard. See How to Request Service Configuration for Oracle Database Exadata Cloud Service.

Creating an Oracle Data Guard Configuration

To create an Oracle Data Guard configuration in Exadata Cloud Service, make the following choices in the Create Instance wizard:

  • On the Instance page, choose Database Clustering with RAC and Data Guard Standby as the Database Type.

  • On the Instance Details page, complete the Standby Database section:

    • Standby Database Configuration — influences the location of the Oracle Data Guard standby database. Select from the following options:

      • High Availability — indicates that the standby database is placed on a different Exadata system in the same region (data center) as the primary database, thus providing isolation at the Exadata system infrastructure level.

      • Disaster Recovery — indicates that the standby database is placed in a different region (data center) from the primary database, thus providing isolation at the Exadata system infrastructure level and geographical separation to protect against catastrophic data center failure.

    • Exadata System — select an available Oracle Exadata Database Machine configuration to host the standby database. The list contains the Oracle Exadata Database Machines that are associated with your active Exadata Cloud Service instances.

      Your selection is validated when you leave the Instance Details page, and you will be notified if the selection is not consistent with your Standby Database Configuration specification.

      Note:

      The Exadata System used to host the standby database must exist in the same identity domain as the Exadata System previously specified on the Instance page that is used to host the primary database.
    • Hostnames — specify one or more compute nodes that you want to host the database instances for the standby database.

      Note:

      The number of compute nodes that you specify here must match the number of compute nodes that you specified for the primary database.

For further details, see Creating a Database Deployment.

When you make these choices, Exadata Cloud Service creates an Oracle Data Guard configuration with a primary database and a single standby database, hosting the databases on two independent Exadata systems.

The configuration includes Oracle Active Data Guard. See "Opening a Physical Standby Database" in Oracle Data Guard Concepts and Administration for Release 18, 12.2, 12.1, or 11.2 for more information on the real-time query and the automatic block media recovery features of Oracle Active Data Guard.

With Exadata Cloud Service, you can use the Oracle Database Cloud Service console to perform key Data Guard operations, such as switchover, failover and reinstating a failed primary database, as described in Administering a Data Guard Configuration.

You can also manage primary and standby databases by using the SQL command-line interface or the Oracle Data Guard broker interfaces. The broker provides a command-line interface (DGMGRL) and a graphical user interface through Oracle Enterprise Manager Cloud Control.

Configuring IP Networks for Oracle Data Guard

You must configure your IP network definitions to enable the network communication that is required for Oracle Data Guard.

With Exadata Cloud Service, the client network is used by default to facilitate network communications between the primary and standby instances in an Oracle Data Guard configuration.

The required configuration of the client IP networks on your primary and standby instances depends on whether they share the same client IP network. The following scenarios are supported:

Instances Sharing the Same Client Network

If your Exadata Cloud Service instances are in the same region and use the same client IP network, then you must create two security rules to enable the network communication that is required for Oracle Data Guard:

  • Create an ingress rule for the client network of the primary instance to accept network traffic from the standby instance by specifying the following properties:

    • Name — specify a name of your choosing to identify the security rule.

    • Status — select Enabled.

    • Type — select Ingress.

    • Access Control List — select the access control list that is associated with the client IP network on the primary instance.

    • Source vNICset — select the virtual NIC set (vNICset) that is associated with the client IP network on the standby instance.

    • Destination vNICset — select the virtual NIC set that is associated with the client IP network on your the instance.

  • Create an ingress rule for the client network of the standby instance to accept network traffic from the primary instance by specifying the following properties:

    • Name — specify a name of your choosing to identify the security rule.

    • Status — select Enabled.

    • Type — select Ingress.

    • Access Control List — select the access control list that is associated with the client IP network on the standby instance.

    • Source vNICset — select the virtual NIC set (vNICset) that is associated with the client IP network on the primary instance.

    • Destination vNICset — select the virtual NIC set that is associated with the client IP network on the standby instance.

See Creating a Security Rule for IP Networks.

Instances with Different Client Networks

If your Exadata Cloud Service instances are in the same region but use different client IP networks, then you must perform the following configuration steps to enable the network communication that is required for Oracle Data Guard:

  1. Create an IP network exchange.

    See Creating an IP Network Exchange.

  2. Modify the primary and standby client IP networks to use the newly created IP network exchange.

    See Updating an IP Network.

  3. Create two security rules to enable the network communication that is required for Oracle Data Guard:

    • Create an ingress rule for the client network of the primary instance to accept network traffic from the standby instance by specifying the following properties:

      • Name — specify a name of your choosing to identify the security rule.

      • Status — select Enabled.

      • Type — select Ingress.

      • Access Control List — select the access control list that is associated with the client IP network on the primary instance.

      • Source vNICset — select the virtual NIC set (vNICset) that is associated with the client IP network on the standby instance.

      • Destination vNICset — select the virtual NIC set that is associated with the client IP network on the primary instance.

    • Create an ingress rule for the client network of the standby instance to accept network traffic from the primary instance by specifying the following properties:

      • Name — specify a name of your choosing to identify the security rule.

      • Status — select Enabled.

      • Type — select Ingress.

      • Access Control List — select the access control list that is associated with the client IP network on the standby instance.

      • Source vNICset — select the virtual NIC set (vNICset) that is associated with the client IP network on the primary instance.

      • Destination vNICset — select the virtual NIC set that is associated with the client IP network on the standby instance.

    See Creating a Security Rule for IP Networks.