Pular para o conteúdo principal

Questão de Banco de Dados — Oracle — FGV 2024

Banco de DadosOracle
Código
fg165210
Banca
FGV
Órgão
TJ AP
Ano
2024
Cargo
AJ ( )
João, administrador de banco de dados, deverá configurar a inicialização de uma instância do Banco de Dados Oracle. Para isso, deverá considerar que somente poderá executar o “shutdown” da instância após o “rollback” das transações não submetidas a “commit”.   Para tanto, como João não precisa aguardar a conclusão de todas as transações, ele deverá executar o modo de “shutdown”:
  1. Aabort;
  2. Bmount;
  3. Cnomount;
  4. Dimmediate;
  5. Etransactional.
Revelar gabarito e comentário

GabaritoD — immediate;

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Modos de Shutdown no Oracle Database

Gabarito: letra D — o modo que permite o encerramento da instância após o rollback das transações não confirmadas, sem aguardar a conclusão de todas as transações, é o SHUTDOWN IMMEDIATE. Esse modo impede novas conexões, encerra as sessões ativas, faz o rollback das transações pendentes e então desmonta e fecha o banco de dados.

O comando SHUTDOWN no Oracle possui quatro modos principais: NORMAL, TRANSACTIONAL, IMMEDIATE e ABORT. Cada um define um comportamento distinto em relação às sessões ativas e às transações pendentes. O SHUTDOWN NORMAL aguarda a desconexão voluntária de todos os usuários, o que pode levar um tempo indeterminado. O SHUTDOWN TRANSACTIONAL impede novas transações, mas aguarda a conclusão das transações em andamento. O SHUTDOWN IMMEDIATE não aguarda a conclusão das transações: ele encerra as sessões ativas e realiza o rollback das transações não confirmadas. Já o SHUTDOWN ABORT encerra a instância imediatamente, sem rollback, exigindo recuperação na próxima inicialização.

A questão descreve exatamente o comportamento do SHUTDOWN IMMEDIATE: o administrador não precisa aguardar a conclusão de todas as transações, mas o rollback das transações não submetidas a commit deve ocorrer. Esse é o modo mais utilizado em situações de manutenção ou quando se deseja um desligamento rápido e seguro, pois garante a consistência dos dados sem depender da cooperação dos usuários.

É importante distinguir os modos de shutdown dos estágios de inicialização da instância. Os modos MOUNT e NOMOUNT não são modos de shutdown, mas sim fases de inicialização do banco de dados. No NOMOUNT, a instância é iniciada apenas com a SGA e os processos em background, sem montar o banco de dados. No MOUNT, a instância lê o arquivo de controle e monta o banco de dados, mas ele ainda não está aberto para acesso dos usuários. Esses estágios são usados em operações como criação de banco de dados, recuperação ou manutenção de arquivos.

A pegadinha da questão está em confundir os modos de shutdown com os estágios de inicialização. As alternativas B (mount) e C (nomount) são estágios de inicialização, não modos de shutdown. A alternativa A (abort) é um modo de shutdown, mas não realiza rollback. A alternativa E (transactional) é um modo de shutdown que aguarda a conclusão das transações, o que contraria a condição do enunciado de não precisar aguardar. A alternativa D (immediate) é a única que atende exatamente ao requisito: rollback das transações pendentes sem aguardar a conclusão de todas.

Modo de Shutdown

Aguarda transações em andamento?

Realiza rollback de transações pendentes?

Uso típico

NORMAL

Sim (aguarda desconexão voluntária)

Sim

Desligamento planejado, sem urgência

TRANSACTIONAL

Sim (aguarda conclusão das transações ativas)

Sim

Permitir conclusão de transações correntes

IMMEDIATE

Não

Sim

Desligamento rápido e seguro, manutenção

ABORT

Não

Não (exige recuperação na próxima inicialização)

Emergência, banco sem resposta

1NORMAL
Aguarda desconexão voluntária
2TRANSACTIONAL
Aguarda transações em andamento
3IMMEDIATE
Encerra sessões ativas
Rollback das pendentes
4ABORT
Encerra sem rollback
Recuperação na inicialização
Shutdown no Oracle
LEVELsoulevel.com.br
Shutdown no Oracle: NORMAL (Aguarda desconexão voluntária); TRANSACTIONAL (Aguarda transações em andamento); IMMEDIATE (Encerra sessões ativas, Rollback das pendentes); ABORT (Encerra sem rollback, Recuperação na inicialização)

Alternativa A — ❌ Incorreta

O SHUTDOWN ABORT encerra a instância imediatamente, sem realizar o rollback das transações não confirmadas. Ele é usado em situações de emergência, quando o banco não responde ou quando é necessário um desligamento rápido. As transações pendentes são deixadas em estado de recuperação e serão revertidas na próxima inicialização, durante o processo de recuperação automática. Portanto, não atende ao requisito de realizar o rollback antes do shutdown.

Alternativa B — ❌ Incorreta

MOUNT não é um modo de shutdown, mas sim um estágio de inicialização da instância. Nessa fase, a instância lê o arquivo de controle e monta o banco de dados, mas ele não está aberto para acesso dos usuários. É usado em operações como recuperação de banco de dados, renomeação de arquivos ou manutenção de arquivos de controle. Não há relação com o encerramento da instância.

Alternativa C — ❌ Incorreta

NOMOUNT também não é um modo de shutdown, mas sim o primeiro estágio de inicialização da instância. Nessa fase, a instância é iniciada apenas com a SGA e os processos em background, sem montar o banco de dados. É usado na criação de um novo banco de dados ou na recriação do arquivo de controle. Não há relação com o encerramento da instância.

Alternativa D — ✅ Correta ⟵ GABARITO

O SHUTDOWN IMMEDIATE é o modo que atende exatamente ao requisito do enunciado. Ele impede novas conexões, encerra as sessões ativas, realiza o rollback das transações não confirmadas e então desmonta e fecha o banco de dados. O administrador não precisa aguardar a conclusão de todas as transações, pois o Oracle reverte automaticamente as transações pendentes. Esse é o modo mais comum para desligamentos planejados, pois é rápido e garante a consistência dos dados.

Alternativa E — ❌ Incorreta

O SHUTDOWN TRANSACTIONAL impede novas transações, mas aguarda a conclusão das transações em andamento antes de encerrar a instância. Isso contraria a condição do enunciado, que afirma que João não precisa aguardar a conclusão de todas as transações. Esse modo é útil quando se deseja permitir que os usuários concluam suas transações atuais, mas não é o caso descrito na questão.

Gabarito: letra D — o modo SHUTDOWN IMMEDIATE realiza o rollback das transações não confirmadas sem aguardar a conclusão de todas as transações, exatamente como descrito no enunciado.

Link permanente: /questoes/fg165210