Questão nº 34
Questão de Banco de Dados · FCC TST 2017 (nº 34)
Um Analista de Sistemas deseja fazer um backup completo de um banco de dados SQL Server chamado `vendas` para um disco cujo caminho é definido por `'Z:\servidor_backup\vendas.bak'`, formatando a mídia e comprimindo o banco de dados, utilizando Transact-SQL. Para isso, terá que utilizar o comando
- A`RMAN DATABASE vendas to 'Z:\servidor_backup\vendas.bak' WITH FORMAT, COMPRESSION;`
- B`BACKUP DATABASE vendas TO DISK = 'Z:\servidor_backup\vendas.bak' WITH FORMAT, COMPRESSION;` (alternativa correta)
- C`BACKUP FROM vendas TO Z:\servidor_backup\vendas.bak SET FORMAT, COMPRESSION;`
- D`BACKUP vendas TO Z:\servidor_backup\vendas.bak -F, -C;`
- E`BACKUP FULL vendas TO DISK = 'Z:\servidor_backup\vendas.bak' WITH CONTRAINT='FORMAT, COMPRESSION';`
Resposta comentada
Gabarito Alternativa B
O comando `BACKUP DATABASE` no SQL Server é usado para criar uma cópia de segurança completa de um banco de dados, que é essencial para a recuperação de dados em caso de falha. Ele permite especificar o destino do backup e diversas opções, como formatação e compressão.
(A) Incorreta: `RMAN` é uma ferramenta de backup e recuperação específica para bancos de dados Oracle, não para SQL Server.
(B) Correta: Este comando utiliza a sintaxe correta do Transact-SQL para SQL Server. `BACKUP DATABASE vendas` inicia o backup do banco de dados `vendas`. `TO DISK = 'Z:\servidor_backup\vendas.bak'` define o caminho e nome do arquivo de backup. `WITH FORMAT` garante que a mídia de backup seja formatada (sobrescrevendo backups anteriores no mesmo arquivo, se existirem, ou criando um novo conjunto de mídia), e `WITH COMPRESSION` comprime o arquivo de backup para economizar espaço.
(C) Incorreta: A sintaxe `BACKUP FROM` e `SET FORMAT, COMPRESSION` não são válidas no Transact-SQL para SQL Server. O correto seria `BACKUP DATABASE` e `WITH`.
(D) Incorreta: Esta sintaxe (`-F, -C`) é típica de parâmetros de linha de comando ou de outras ferramentas, e não do comando `BACKUP DATABASE` em Transact-SQL. Além disso, o comando `BACKUP vendas` está incompleto.
(E) Incorreta: Embora `BACKUP FULL` possa parecer intuitivo, a sintaxe padrão para um backup completo é `BACKUP DATABASE`. Mais importante, `WITH CONTRAINT='FORMAT, COMPRESSION'` está incorreto; as opções devem ser listadas diretamente após `WITH`, separadas por vírgulas, como em `WITH FORMAT, COMPRESSION`.
Fonte: FCC TST 2017 Analista Judiciário - Análise de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.