Which two are prerequisites for configuring Transaction Guard in a Data Guard environment?
A.
Grant execute permission on the DBMS_APP_CONT package to relevant database schema owners.
B.
Create a database service with COMMIT_OUTCOME set to TRUE, and ensure clients use that service to
connect to the database instance.
C.
Ensure that connection descriptors for database clients use the failover clause with the
COMMIT_OUTCOME parameter set to TRUE.
D.
Set INSTANCE_NAME identically on all the Data Guard Configuration databases and modify the local
service name on the client to include a CONNECTION_LIST containing all the standby hosts.
E.
Create a database service with COMMIT_OUTCOME set to TRUE and ensure that the service is statically
registered with the default listener on the primary host.
Explanation:
To use Transaction Guard with an application, you must do the following:
* Grant permission on the DBMS_APP_CONT package to the database users who will call
GET_LTXID_OUTCOME:
GRANT EXECUTE ON DBMS_APP_CONT TO <user-name>;
* Use an application service for all database work. Create the service using the srvctl command if you are
using Oracle RAC, or using the DBMS_SERVICE.CREATE_SERVICE PL/SQL subprogram if you are not
using Oracle RAC.
Configure the services for commit outcome and retention. For example:
COMMIT_OUTCOME = TRUE
RETENTION_TIMEOUT = <retention-value>
COMMIT_OUTCOME determines whether transaction commit outcome is accessible after the commit has
executed.
https://docs.oracle.com/database/121/ADFNS/adfns_trans_idemp_guard.htm#ADFNS338
A,B
https://docs.oracle.com/database/121/ADFNS/adfns_trans_idemp_guard.htm#ADFNS335
A,B