Eu não sabia sobre isso, mas descobri depois de tentar restaurar um banco de dados do servidor remoto e ele não será restaurado se o banco de dados não existir antes. O que eu faria é
- crie um arquivo .bak (faça backup do banco de dados)
- Copie o arquivo .bak para o servidor remoto usando a pasta compartilhada
- Execute a restauração no SQL Server Management Studio para restaurar o banco de dados
Vai me dar erro. Acho que encontrei quase sem querer (ou por frustração, apenas restaurei no banco de dados e funcionou).
Agora, enquanto digito a pergunta, percebo que mover provavelmente não é a mesma coisa que restaurar. Para restauração, o banco de dados já deve existir?
Estou na mesma posição novamente para restaurar um banco de dados que não existe no meu sistema.
1. Que procedimento devo seguir?
2. Preciso definir permissão no arquivo .bak antes de restaurar com êxito no servidor remoto?
3. Ou existe uma maneira melhor?
Estou perdendo alguma coisa? Gostaria de saber quais são as regras ao restaurar (ou mover) o banco de dados.
Edit: Adicionando o erro de diálogo. Acabei de repetir o processo. Não tenho certeza se esse foi o erro exato que estava recebendo antes. Eu renomeei o banco de dados original que tenho. Então eu importo usando o SSMS.
Não, para uma restauração, você não precisa ter o banco de dados já existente (tenha cuidado para não ter a
with replace
opção definida em seurestore database
comando).A instrução abaixo criaria um novo banco de dados a partir do backup:
Obviamente, modifique os parâmetros de acordo. Mas isso não precisa
YourNewDbName
existir antes dorestore database
.Não, um banco de dados não precisa já existir para restaurar um backup. O erro que você recebeu provavelmente foi porque você copiou algum comando de restauração de algum lugar e ele tinha opções que o impediam de funcionar com sucesso. Será mais fácil ajudá-lo a resolver o problema se você postar o
RESTORE
comando real que executou e a mensagem de erro real que recebeu.