Log on to SQLPlus as a system user, for example:

4-4 Oracle Fusion Middleware High Availability Guide read-only MDS operations being protected from Oracle RAC database planned and unplanned downtimes. MDS multi data sources are exposed as MDS repositories in the Fusion Middleware Control navigation tree. These multi data sources can be selected during deployment plan customization of application deployment, and can be used with MDS WLST commands. ■ Configuring an application to retry read-only operations To configure an application to retry the connection, you can configure the RetryConnection attribute of the applications MDS AppConfig MBean. For information about MDS configuration, see the Oracle Fusion Middleware Administrator’s Guide. ■ Registering an MDS multi data source In addition to the steps specified in Section 4.1.3, Configuring Multi Data Sources with Oracle RAC, consider the following for MDS: – The child data sources that constitute a multi data source used for an MDS Repository must be configured as non-XA data sources. – The multi data sources name must be pre-fixed with mds-. This is required so the multi data source can be recognized as an MDS repository that can be used for MDS management functionality through Fusion Middleware Control, WLST, and JDeveloper. ■ Converting a data source to a multi data source There are two considerations when converting an MDS data source to a multi data source to make sure the application is configured correctly: – If you are creating a new multi data source with a new, unique name, redeploy the application and select this new multi data source as the MDS repository during deployment plan customization. – If you want to avoid redeploying the application, you can delete the data source and recreate the new multi data source using the same name and jndi-name attributes.

4.1.2.2 Oracle RAC Configuration Requirements

This section describes requirements for Oracle RAC configuration: ■ XA Requirements : Many Oracle components participate in distributed transactions, or are part of container managed transactions. These components require the back-end database setup for XA recovery by Oracle WebLogic Transaction Manager. For repositories created using RCU, this is done automatically. For other databases participating in XA transactions, ensure that XA pre-requisites are met:

1. Log on to SQLPlus as a system user, for example:

Note: When an MDS data source is added as a child of a multi data source, this data source is no longer exposed as an MDS repository. For example, it is not displayed under the Metadata Repositories folder in the Fusion Middleware Control navigation tree, no MDS repository operations can be performed on it, and it does not appear in the list of selectable repositories during deployment. Considerations for High Availability Oracle Database Access 4-5 sqlplus as sysdba 2. Grant select on sys.dba_pending_transactions to public. 3. Grant execute on sys.dbms_xa to public. 4. Grant force any transaction to user. ■ Server-side Load Balancing : If the server-side load balancing feature has been enabled for the Oracle RAC back end using remote_listeners, the JDBC URL used in the data sources of a multi data source configuration should include the INSTANCE_NAME. For example, you can specify the URL in the following format: jdbc:oracle:thin:DESCRIPTION=ADDRESS=PROTOCOL=TCPHOST=host-vip PORT=1521CONNECT_DATA=SERVICE_NAME=dbserviceINSTANCE_NAME=inst1 By default, the out-of-box installation assumes that remote_listener has been configured and creates the URL for data sources in a multi data source accordingly. Any multi data source created outside of the typical installation and configuration should follow the format described in this section. If remote_listeners cannot be specified on the Oracle RAC side, and server side load balancing has been disabled, specifying the INSTANCE_NAME in the URL is not necessary. To disable remote listeners, delete any listed remote listeners in spfile.ora file on each Oracle RAC node. For example: .remote_listener= In this case, the recommended URL that you use in the data sources of a multi data source configuration is: jdbc:oracle:thin:host-vip:portdbservice Or jdbc:oracle:thin:DESCRIPTION=ADDRESS=PROTOCOL=TCPHOST=host-vipPORT=1521 CONNECT_DATA=SERVICE_NAME=dbservice ■ Services : When configuring Oracle Fusion Middleware for the Oracle database and specifically for Oracle RAC, Oracle recommends using the Oracle Services feature. Create the service_name provided as part of the database service location specifically for the application.

4.1.2.3 Configuring Schemas for Transactional Recovery Privileges