Pular para o conteúdo principal

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

Banco de DadosPostgreSQL
Código
fg077289
Banca
FGV
Órgão
CVM
Ano
2024
Nível
Superior
Cargo
Analista - Perfil 7 - Ciência de Dados - Tarde
Janine é a responsável pela administração dos bancos de dados gerenciados pelo PostgreSQL de uma autarquia federal. Durante a criação de um banco de dados, Janine especificou a criação de um tablespace diferente do tablespace default.O tablespace criado por Janine:
  1. Aé independente dos metadados contidos no diretório de dados principal;
  2. Bserá tratado pelo PostgreSQL como uma coleção autônoma de arquivos de dados;
  3. Cpode ser anexado a outro cluster de banco de dados diferente daquele no qual foi criado;
  4. Dpode ter uma rotina de backup individual, independente de outros componentes do banco de dados;
  5. Erequer que o superusuário do banco de dados conceda o privilégio de criação no tablespace aos usuários comuns do banco de dados.
Revelar gabarito e comentário

GabaritoE — requer que o superusuário do banco de dados conceda o privilégio de criação no tablespace aos usuários comuns do banco de dados.

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”.

Tablespace no PostgreSQL

Gabarito: letra E. No PostgreSQL, para que um usuário comum (não superusuário) possa criar objetos (tabelas, índices etc.) em um tablespace específico, o superusuário deve conceder o privilégio CREATE naquele tablespace ao usuário. Isso faz parte do sistema de permissões do banco de dados. As demais alternativas apresentam afirmações incorretas sobre a natureza e o gerenciamento de tablespaces.

Alternativa A — ❌ Incorreta

Afirma que o tablespace é independente dos metadados contidos no diretório de dados principal. Na verdade, os metadados referentes a tablespaces (definições armazenadas na tabela pg_tablespace) ficam no catálogo do sistema, que é parte do diretório de dados do cluster. O tablespace apenas redireciona o local físico de armazenamento dos arquivos de dados, mas não é um catálogo independente.

Alternativa B — ❌ Incorreta

Diz que o tablespace é tratado como uma coleção autônoma de arquivos de dados. Um tablespace não é autônomo: ele está subordinado a um único cluster de banco de dados e deve ser gerenciado dentro do mesmo cluster. Objetos criados no tablespace ainda fazem parte do banco de dados e do contexto geral do cluster.

Alternativa C — ❌ Incorreta

Afirma que o tablespace pode ser anexado a outro cluster de banco de dados. Tablespaces são específicos de um cluster — não podem ser "anexados" ou movidos de um cluster para outro sem processos complexos e não suportados diretamente. A estrutura de arquivos até pode ser copiada, mas não há mecanismo nativo de "attach".

Alternativa D — ❌ Incorreta

Diz que é possível fazer backup individual e independente do tablespace. Embora ferramentas como pg_dump ou cópia de arquivos possam isolar um tablespace, o backup consistente do banco de dados exige a consideração de todos os componentes logados (WAL, catálogo). Um backup independente de apenas um tablespace não garante integridade transacional sem o restante do cluster.

Alternativa E — ✅ Correta ⟵ GABARITO

Exatamente conforme a regra de segurança do PostgreSQL: o privilégio CREATE em um tablespace deve ser concedido pelo superusuário (GRANT CREATE ON TABLESPACE nome TO usuario). Sem essa concessão, usuários comuns não podem criar objetos naquele tablespace. Isso é uma prática padrão de controle de acesso.

PEGA ESSA DICA!

Decore que no PostgreSQL, permissões para usar um tablespace seguem a mesma lógica de objetos: quem cria precisa da permissão CREATE no tablespace ou, alternativamente, pode-se definir o tablespace padrão do banco de dados. A banca adora cobrar essa necessidade de concessão explícita.

Gabarito: letra E.

Link permanente: /questoes/fg077289