Questão nº 65
Questão de Tecnologia da Informação · FGV TJ-AP 2024 (nº 65)
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”:
- Aabort;
- Bmount;
- Cnomount;
- Dimmediate; (alternativa correta)
- Etransactional.
Resposta comentada
Gabarito Alternativa D
Quando você desliga um banco de dados Oracle (`shutdown`), existem diferentes modos para controlar como ele para, especialmente em relação às transações que estão acontecendo.
(A) Incorreta: O modo `abort` desliga a instância imediatamente, sem fazer rollback de transações não comitadas e sem fechar os arquivos de forma limpa, o que não atende ao requisito de rollback.
(B) Incorreta: `mount` é um estado da instância do banco de dados, onde os arquivos de controle são lidos, mas os arquivos de dados ainda não estão abertos; não é um modo de desligamento.
(C) Incorreta: `nomount` é um estado da instância do banco de dados, onde apenas a memória e os processos em segundo plano estão ativos, sem ter lido sequer os arquivos de controle; não é um modo de desligamento.
(D) Correta: O modo `immediate` desliga o banco de dados de forma controlada. Ele faz o rollback de todas as transações não submetidas a commit (atendendo ao primeiro requisito) e desconecta os usuários, mas não espera que as transações em andamento sejam concluídas (atendendo ao segundo requisito de "não precisa aguardar a conclusão de todas as transações").
(E) Incorreta: O modo `transactional` desliga o banco de dados de forma controlada, mas ele espera que todas as transações em andamento sejam concluídas (seja por commit ou rollback) antes de desconectar os usuários. Isso contradiz a condição de que João "não precisa aguardar a conclusão de todas as transações". Armadilha: A palavra "transactional" pode induzir ao erro, pois lida com transações, mas de uma forma que não se encaixa no requisito de não esperar.
Fonte: FGV TJ-AP 2024 Analista Judiciário - TI - Banco de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.