DBAtlas · Atlas de operações de banco de dados

Parar / iniciar um banco de dados RAC ou uma única instância com srvctl (rolling)

OracleRAC & Grid

Comando

# Whole database (all instances):
srvctl stop database -db <db_unique_name> -stopoption immediate
srvctl start database -db <db_unique_name>
# Rolling maintenance: stop one instance, moving its services to the other instances
srvctl stop instance -db <db_unique_name> -instance <instance> \
  -stopoption immediate -drain_timeout 300 -failover
srvctl start instance -db <db_unique_name> -instance <instance>
# By node:
srvctl stop instance -db <db_unique_name> -node <node> -stopoption immediate
# Start in a specific open mode (e.g. a physical standby in mount):
srvctl start database -db <db_unique_name> -startoption mount

O que faz

Para/inicia o banco de dados ou a instância selecionada de forma controlada pelo Clusterware; com -failover os serviços da instância parada migram para instâncias disponíveis, e -drain_timeout aguarda o esvaziamento das sessões.

Quando usar

Para reinícios rolling (nó a nó) durante patches, manutenção do SO ou mudanças de parâmetros; para um desligamento completo planejado.

Atenção

No RAC use srvctl em vez de SHUTDOWN no SQL*Plus; caso contrário o Clusterware não conhece o TARGET do recurso e pode reiniciar a instância. stop database derruba todas as instâncias = indisponibilidade total. Se os serviços não tiverem instâncias available definidas, -failover não consegue mover as conexões.

Abrir no DBAtlas →

Relacionados