Questão nº 45
Questão de Tecnologia da Informação · FGV TJ-MS 2024 (nº 45)
João, administrador de Banco de Dados Oracle, percebe que a configuração de um parâmetro específico precisa ser ajustada para otimizar o desempenho do banco de dados. Ele precisa fazer essa alteração, de forma persistente, no arquivo de inicialização (spfile) e garantir que ela seja aplicada após o reinício do banco de dados.
Para isso, João deverá executar o comando:
- AUPDATE SYSTEM SET parameter_name = novo_valor;
- BALTER SESSION SET parameter_name = novo_valor;
- CALTER SYSTEM SET parameter_name = novo_valor SCOPE=PFILE;
- DALTER SYSTEM SET parameter_name = novo_valor SCOPE=SPFILE; (alternativa correta)
- EALTER DATABASE SET parameter_name = novo_valor SCOPE=SPFILE;
Resposta comentada
Gabarito Alternativa D
O SPFILE (Server Parameter File) é o arquivo binário de inicialização do Oracle que armazena os parâmetros de configuração do banco de dados de forma persistente. Para alterar um parâmetro de sistema de forma que a mudança seja salva no SPFILE e persista após o reinício do banco, usa-se o comando ALTER SYSTEM.
- (A) Incorreta:
UPDATE SYSTEM SETnão é um comando SQL válido para alterar parâmetros de inicialização do Oracle.UPDATEé usado para manipular dados em tabelas. - (B) Incorreta:
ALTER SESSION SETaltera o parâmetro apenas para a sessão atual do usuário. A mudança não é persistente, não afeta outras sessões e é perdida ao final da sessão ou ao reiniciar o banco de dados. - (C) Incorreta:
ALTER SYSTEM SET parameter_name = novo_valor SCOPE=PFILE;O comandoALTER SYSTEM SETé correto para alterar parâmetros de sistema. No entanto,SCOPE=PFILEfaria a alteração apenas no PFILE (Parameter File), que é a versão textual do arquivo de inicialização. Se o banco de dados estiver sendo iniciado com um SPFILE, a alteração no PFILE não será aplicada no próximo reinício, a menos que o SPFILE seja recriado a partir do PFILE, ou o banco seja explicitamente iniciado com o PFILE. A armadilha aqui é quePFILEé um arquivo de configuração, mas não é o método direto para garantir a persistência no SPFILE quando este está em uso, como a questão sugere. - (D) Correta:
ALTER SYSTEM SET parameter_name = novo_valor SCOPE=SPFILE;Este é o comando correto.ALTER SYSTEM SETé usado para modificar parâmetros de sistema. A cláusulaSCOPE=SPFILEgarante que a alteração seja gravada diretamente no SPFILE, tornando-a persistente e aplicada automaticamente no próximo reinício do banco de dados. Se o parâmetro for dinâmico, a alteração também pode ser aplicada imediatamente. - (E) Incorreta:
ALTER DATABASE SET parameter_name = novo_valor SCOPE=SPFILE;ALTER DATABASEé usado para operações no nível do banco de dados (como adicionar datafiles, mudar o modo de arquivamento), não para alterar parâmetros de inicialização do sistema. A sintaxeALTER DATABASE SET parameter_namenão é válida para este propósito.
Fonte: FGV TJ-MS 2024 Técnico de Nível Superior - Analista de Banco de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.