Estou trabalhando no seguinte cenário: Estou criando um script que recria um banco de dados inteiro. O script envolve a destruição e recriação do banco de dados e todos os seus objetos, bem como um grande número de inserções de servidores vinculados. A ideia é poder recriar o banco de dados à vontade até que a fase de desenvolvimento termine. Meu problema é que o script gera alta atividade de log, e logo ocorre um CHECKPOINT. Estou eliminando todas as conexões em meu script antes de descartar o banco de dados, mas como CHECKPOINT é um processo do sistema, não consigo eliminá-lo e meu script falha. Não preciso de recuperação para este banco de dados nesta fase, minha dúvida é se posso desabilitar os logs para este banco de dados para evitar o CHECKPOINT.
relate perguntas
-
Melhores práticas para conectar bancos de dados que estão em diferentes regiões geográficas
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Quanto "Padding" coloco em meus índices?
-
Existe um processo do tipo "práticas recomendadas" para os desenvolvedores seguirem para alterações no banco de dados?
-
Downgrade do SQL Server 2008 para 2005
Não, os logs não podem ser desabilitados. Mesmo se você definir a opção de banco de dados para o modelo de recuperação SIMPLE, o log ainda existirá, pois é necessário para atividades transacionalmente consistentes, que são a base do SQL Server.
No entanto, a execução no modelo de recuperação SIMPLE deve reduzir os conflitos que você está enfrentando. Como este é o SQL Server 2008, por que não tentar se livrar do banco de dados antes de reconstruí-lo com algo como o seguinte:
EDIT: Pequena atualização no script para mostrar como manter o controle do banco de dados.
O primeiro ALTER pode não ser necessário, mas ajuda a evitar que outra pessoa entre como o usuário "único".