Questão de Banco de Dados — Oracle — CESPE / CEBRASPE 2025
Banco de Dados›Oracle
Código
ce417312
Banca
CESPE / CEBRASPE
Órgão
STM
Ano
2025
Cargo
AJ ( )
Julgue o item seguinte, relativos à administração de banco de dados Oracle, à modelagem de dados relacional, à normalização de dados e ao data mining.
Em um ambiente Oracle Database, o comando ALTER DATABASE DISMOUNT; pode ser utilizado para desmontar o banco de dados, ou seja, a execução desse comando encerraria o acesso às estruturas físicas (datafiles), mas manteria a instância ativa.
CCerto
EErrado
Revelar gabarito e comentário▾
GabaritoC — Certo
Esta resolução diverge do gabarito oficial. A banca deu Certo; a resolução abaixo sustenta o contrário e explica por quê — ela não foi reescrita para concordar. Acontece nos dois sentidos: há gabarito que cai em recurso e há resolução que erra. Confira na fonte antes de fixar o entendimento.
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”.
Oracle Database – Estados da Instância e do Banco de Dados
Gabarito: Errado. O comando ALTER DATABASE DISMOUNT; desmonta o banco de dados, mas não é ele que encerra o acesso às estruturas físicas (datafiles) mantendo a instância ativa — na verdade, o comando ALTER DATABASE CLOSE; é o responsável por fechar o banco de dados, e o DISMOUNT apenas desmonta o banco de dados da instância, tornando-o inacessível, mas sem encerrar o acesso às estruturas físicas. A afirmação confunde os comandos CLOSE e DISMOUNT.
No Oracle, a instância (conjunto de processos e memória) e o banco de dados (arquivos físicos) são entidades separadas. O ciclo de vida do banco de dados envolve estados como MOUNTED, OPEN e CLOSED. O comando ALTER DATABASE CLOSE; fecha o banco de dados, encerrando o acesso aos datafiles, mas mantém a instância ativa. Já o comando ALTER DATABASE DISMOUNT; desmonta o banco de dados da instância, ou seja, a instância deixa de ter o banco de dados montado, mas isso não é o que encerra o acesso às estruturas físicas — o acesso já foi encerrado pelo CLOSE. A sequência correta para desmontar é: primeiro CLOSE, depois DISMOUNT. Portanto, a afirmação está incorreta ao atribuir ao DISMOUNT a função de encerrar o acesso aos datafiles.
Para entender melhor, é importante distinguir os estados do banco de dados Oracle:
SHUTDOWN: encerra a instância e o banco de dados.
STARTUP NOMOUNT: inicia a instância, mas não monta o banco de dados.
STARTUP MOUNT: monta o banco de dados, mas não o abre.
STARTUP OPEN: abre o banco de dados para uso.
ALTER DATABASE CLOSE: fecha o banco de dados, mas mantém a instância ativa.
ALTER DATABASE DISMOUNT: desmonta o banco de dados da instância, mas não fecha o banco de dados.
A sequência correta para desmontar é: primeiro CLOSE, depois DISMOUNT. Portanto, a afirmação está incorreta ao atribuir ao DISMOUNT a função de encerrar o acesso aos datafiles.
NÃO CAIA NESSA!
A banca troca os comandos CLOSE e DISMOUNT. O CLOSE é o que encerra o acesso aos datafiles; o DISMOUNT apenas desmonta o banco de dados da instância. Lembre-se: para desmontar, primeiro fecha-se (CLOSE), depois desmonta-se (DISMOUNT).
PEGA ESSA DICA!
Para memorizar a sequência, pense: "Fechar antes de desmontar". O CLOSE é como fechar a porta do cofre; o DISMOUNT é como retirar o cofre do lugar. Sem fechar, não se pode desmontar com segurança.
Comando
Efeito sobre datafiles
Mantém instância ativa?
Estado resultante
ALTER DATABASE CLOSE
Encerra o acesso aos datafiles
Sim
Banco fechado, instância ativa
ALTER DATABASE DISMOUNT
Não encerra o acesso (já foi encerrado pelo CLOSE)
Sim
Banco desmontado da instância
1SHUTDOWN
2STARTUP NOMOUNT
3STARTUP MOUNT
4STARTUP OPEN
5ALTER DATABASE CLOSE
6ALTER DATABASE DISMOUNT
LEVEL · soulevel.com.br
Item — ❌ Errado
A afirmação está errada porque atribui ao ALTER DATABASE DISMOUNT a função de encerrar o acesso às estruturas físicas (datafiles), quando na verdade essa função é do ALTER DATABASE CLOSE. O DISMOUNT apenas desmonta o banco de dados da instância, mas não encerra o acesso aos datafiles — esse acesso já foi encerrado pelo CLOSE. A sequência correta é: primeiro CLOSE, depois DISMOUNT. Portanto, a afirmação está incorreta ao confundir os comandos.