DBAtlas · Atlas de operaciones de bases de datos

Añadir un servicio RAC con instancias preferred/available (incluido Application Continuity)

OracleRAC y Grid

Comando

srvctl add service -db <db_unique_name> -service <service> \
  -preferred <inst1>,<inst2> -available <inst3> \
  -pdb <pdb> -role PRIMARY -policy AUTOMATIC \
  -failovertype TRANSACTION -commit_outcome TRUE \
  -failoverretry 30 -failoverdelay 10 \
  -clbgoal SHORT -rlbgoal SERVICE_TIME -notification TRUE \
  -drain_timeout 300 -stopoption IMMEDIATE
srvctl start service -db <db_unique_name> -service <service>
# Verify:
srvctl config service -db <db_unique_name> -service <service>
srvctl status service -db <db_unique_name> -service <service>

Qué hace

Define un servicio para aplicaciones que normalmente se ejecuta en las instancias preferred y pasa a una instancia available cuando estas fallan; con -role PRIMARY solo se inicia en el rol primario bajo Data Guard.

Cuándo usarlo

Para conectar las aplicaciones a un servicio en lugar de a una instancia, repartir cargas de trabajo entre nodos y habilitar un failover transparente (drain/failover) durante el mantenimiento planificado.

Precaución

Las aplicaciones deben conectarse con este nombre de servicio (a través de SCAN), no con un SID o nombre de instancia. -failovertype TRANSACTION (Application Continuity) requiere soporte de la aplicación/driver; si no está seguro, empiece con -failovertype SELECT (TAF) o NONE. No use los servicios SYS$ ni el servicio por defecto con el nombre de db_unique_name para aplicaciones.

Abrir en DBAtlas →

Relacionado