Pular para o conteúdo principal

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

Banco de DadosPostgreSQL
Código
fg121824
Banca
FGV
Órgão
TCE-RR
Ano
2025
Nível
Superior
Cargo
Analista Administrativo - Tecnologia da Informação, com especialidade em Banco de Dados
Com o objetivo de instalar um sistema de banco de dados PostgreSQL no servidor de banco de dados db_server, o arquivo postgres-17.2.tar.bz2 foi obtido da página da internet https://www.postgresql.org/ftp/source e gravado no diretório raiz do servidor.

A seguir, os seguintes comandos foram executados pelo usuário tce_rr que possui perfil de administrador:

Imagem associada para resolução da questão


Com relação a essa rotina de instalação, é correto afirmar que 
  1. Aos arquivos de instalação obtidos após a descompactação do arquivo postgres-17.2.tar.bz2 foram gravados no diretório raiz.
  2. Btodos os arquivos foram instalados, incluindo a documentação e manuais.
  3. Ca versão instalada inclui apenas as bibliotecas de desenvolvimento de aplicações para usuários do tipo cliente.
  4. Dtestes do sistema operacional são realizados durante a execução do comando ./configure e os arquivos de log são gerados e armazenados na pasta postgresql17.2.
  5. Enão foi instalada a biblioteca para utilização de conexões remotas criptografadas do tipo Secure Sockets Layer.
Revelar gabarito e comentário

GabaritoA — os arquivos de instalação obtidos após a descompactação do arquivo postgres-17.2.tar.bz2 foram gravados no diretório raiz.

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

Instalação do PostgreSQL a partir do código-fonte

Gabarito: letra A. Ao descompactar o arquivo postgres-17.2.tar.bz2 no diretório raiz, os arquivos de instalação são extraídos para uma subpasta criada no mesmo diretório — no caso, /postgres-17.2 — e é exatamente isso que a alternativa A afirma. As demais alternativas contêm erros conceituais sobre o processo de compilação e instalação do PostgreSQL a partir do código-fonte.

A instalação do PostgreSQL a partir do código-fonte segue um fluxo clássico no Linux: primeiro, o arquivo compactado (.tar.bz2) é descompactado com o comando tar, o que cria um diretório com o código-fonte; depois, executa-se o script ./configure, que verifica as dependências do sistema e gera os arquivos de configuração; em seguida, o comando make compila o código; e, por fim, make install instala os binários, bibliotecas e arquivos de suporte no sistema. Esse processo é padrão para softwares distribuídos em código-fonte e é o que a questão explora.

O comando tar -xjf postgres-17.2.tar.bz2 (ou tar -xvf, dependendo da versão) extrai o conteúdo do arquivo no diretório corrente. Como o arquivo foi gravado no diretório raiz (/), a extração cria a pasta /postgres-17.2 ali mesmo. É importante notar que o tar não instala nada — ele apenas descompacta. A instalação efetiva só ocorre com make install, que copia os arquivos para os diretórios do sistema (como /usr/local/pgsql). Portanto, a alternativa A está correta ao afirmar que os arquivos de instalação (ou seja, o código-fonte descompactado) foram gravados no diretório raiz.

A alternativa B afirma que "todos os arquivos foram instalados, incluindo a documentação e manuais". Isso é falso porque, no momento da descompactação, nada foi instalado — apenas extraído. A documentação e os manuais só são instalados com make install (e, em alguns casos, com make install-docs). Além disso, a documentação completa nem sempre é instalada por padrão. A alternativa C diz que "a versão instalada inclui apenas as bibliotecas de desenvolvimento de aplicações para usuários do tipo cliente". Isso também é falso: o PostgreSQL é um SGBD completo, com servidor, cliente, bibliotecas e ferramentas. A alternativa D afirma que "testes do sistema operacional são realizados durante a execução do comando ./configure e os arquivos de log são gerados e armazenados na pasta postgresql17.2". O ./configure verifica dependências e gera o Makefile, mas não executa "testes do sistema operacional" nem gera logs nessa pasta. A alternativa E diz que "não foi instalada a biblioteca para utilização de conexões remotas criptografadas do tipo Secure Sockets Layer". Isso é falso: o PostgreSQL suporta SSL por padrão, e a biblioteca libssl é compilada e instalada como parte do processo.

A pegadinha central desta questão é confundir descompactação com instalação. O enunciado descreve apenas a extração do arquivo, não a compilação e instalação. A alternativa A é a única que se limita ao que realmente aconteceu: os arquivos foram extraídos para o diretório raiz. As demais falam de instalação, testes, bibliotecas específicas — tudo isso só ocorreria em etapas posteriores, que não foram executadas.

Guarde a distinção entre as etapas: descompactar (extrair o código-fonte), configurar (./configure), compilar (make) e instalar (make install). É nessa fronteira que as alternativas se dividem: a correta fala apenas da descompactação; as erradas falam de instalação e outros processos que não ocorreram.

  1. 1Descompactar (tar)
  2. 2Configurar (./configure)
  3. 3Compilar (make)
  4. 4Instalar (make install)
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

A alternativa afirma que "os arquivos de instalação obtidos após a descompactação do arquivo postgres-17.2.tar.bz2 foram gravados no diretório raiz". Isso é exatamente o que acontece: o comando tar extrai o conteúdo do arquivo no diretório corrente, que é o diretório raiz (/). O resultado é a criação da pasta /postgres-17.2 contendo o código-fonte. A palavra "instalação" aqui é usada de forma genérica (referindo-se aos arquivos que serão usados na instalação), mas o fato central — a gravação no diretório raiz — está correto.

Alternativa B — ❌ Incorreta

Afirma que "todos os arquivos foram instalados, incluindo a documentação e manuais". O erro está em dizer que houve instalação. No momento descrito, apenas a descompactação ocorreu; a instalação (com make install) não foi executada. Além disso, a documentação e os manuais não são instalados por padrão em todas as distribuições — muitas vezes é necessário um alvo específico (make install-docs). Portanto, a afirmação é falsa.

Alternativa C — ❌ Incorreta

Diz que "a versão instalada inclui apenas as bibliotecas de desenvolvimento de aplicações para usuários do tipo cliente". Isso é duplamente errado: primeiro, porque não houve instalação; segundo, porque o PostgreSQL não instala apenas bibliotecas de desenvolvimento — ele instala o servidor completo, clientes, ferramentas administrativas e bibliotecas. A afirmação confunde o escopo da instalação, que é muito mais amplo.

Alternativa D — ❌ Incorreta

Afirma que "testes do sistema operacional são realizados durante a execução do comando ./configure e os arquivos de log são gerados e armazenados na pasta postgresql17.2". O ./configure verifica dependências (como compilador, bibliotecas) e gera o Makefile, mas não executa "testes do sistema operacional" nem gera logs na pasta do código-fonte. Os testes de regressão, por exemplo, são executados com make check, não com ./configure. A afirmação mistura etapas e inventa um comportamento que não existe.

Alternativa E — ❌ Incorreta

Diz que "não foi instalada a biblioteca para utilização de conexões remotas criptografadas do tipo Secure Sockets Layer". O PostgreSQL suporta SSL nativamente e, na compilação a partir do código-fonte, a biblioteca libssl é detectada pelo ./configure e incluída na instalação. Além disso, como não houve instalação, a afirmação sobre o que "foi instalado" é prematura. A alternativa tenta confundir o candidato com um detalhe técnico (SSL) que não é o foco da questão.

Gabarito: letra A

Link permanente: /questoes/fg121824