Renomear um banco de dados

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

Este artigo descreve como renomear um banco de dados definido pelo usuário no SQL Server, no Banco de Dados SQL do Azure ou na Instância Gerenciada de SQL do Azure usando o SSMS (SQL Server Management Studio) ou o T-SQL (Transact-SQL). O nome do banco de dados pode incluir qualquer caractere que segue as regras para identificadores.

Observação

Para renomear um banco de dados no Azure Synapse Analytics ou no Parallel Data Warehouse, use a instrução RENAME (Transact-SQL).

Limitações e restrições

  • Os bancos de dados do sistema não podem ser renomeados.
  • O nome do banco de dados não pode ser alterado enquanto outros usuários estão acessando o banco de dados.
  • Renomear um banco de dados não altera o nome físico dos arquivos de banco de dados no disco nem os nomes lógicos dos arquivos. Para obter mais informações, consulte Database Files and Filegroups.
  • Não é possível renomear um banco de dados SQL do Azure configurado em uma relação de replicação geográfica ativa.

Permissões

Requer a permissão ALTER no banco de dados.

Use SQL Server Management Studio.

Use as etapas a seguir para renomear um SQL Server ou Banco de Dados SQL do Azure usando o SQL Server Management Studio.

  1. No SQL Server Management Studio, selecione Pesquisador de Objetos. Para abrir o Pesquisador de Objetos, selecione F8. Se preferir, no menu superior, selecione Exibir e selecione Pesquisador de Objetos:

  2. No Pesquisador de Objetos, conecte-se a uma instância do SQL Server e expanda-a.

  3. Verifique se não há nenhuma conexão aberta ao banco de dados. Se você estiver usando o SQL Server, poderá definir o banco de dados para o modo de usuário único para fechar todas as conexões abertas e impedir que outros usuários se conectem enquanto você estiver alterando o nome do banco de dados.

  4. No Pesquisador de Objetos, expanda Bancos de Dados, clique com o botão direito do mouse no banco de dados para renomear e selecione Renomear.

  5. Insira o novo nome do banco de dados e selecione OK

  6. Se o banco de dados for o banco de dados padrão, confira Redefinir o banco de dados padrão após a renomeação.

  7. Atualize a lista de banco de dados no Pesquisador de Objetos.

Usar o Transact-SQL

Para renomear um banco de dados do SQL Server colocando-o no modo de usuário único

Use as etapas a seguir para renomear um banco de dados do SQL Server usando o T-SQL no SQL Server Management Studio, incluindo as etapas para colocar o banco de dados no modo de usuário único. Depois de renomeá-lo, coloque o banco de dados novamente em modo multiusuário.

  1. Conecte-se ao banco de dados master para sua instância.
  2. Abra uma janela de consulta.
  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo altera o nome do banco de dados MyTestDatabase para MyTestDatabaseCopy.

Aviso

Para obter acesso exclusivo rapidamente, o exemplo de código usa a opção de término WITH ROLLBACK IMMEDIATE. Isso levará todas as transações incompletas a serem revertidas e qualquer outra conexão com o banco de dados MyTestDatabase a ser desconectada imediatamente.

USE master;  
GO  
ALTER DATABASE MyTestDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE MyTestDatabase MODIFY NAME = MyTestDatabaseCopy;
GO  
ALTER DATABASE MyTestDatabaseCopy SET MULTI_USER;
GO
  1. Opcionalmente, se o banco de dados for o banco de dados padrão, confira Redefinir o banco de dados padrão após a renomeação.

Para renomear um banco de dados do Banco de Dados SQL do Azure

Use as etapas a seguir para renomear um Banco de Dados SQL do Azure usando o T-SQL no SQL Server Management Studio.

  1. Conecte-se ao banco de dados master para sua instância.

  2. Abra uma janela de consulta.

  3. Garanta que ninguém esteja usando o banco de dados.

  4. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo altera o nome do banco de dados MyTestDatabase para MyTestDatabaseCopy.

    ALTER DATABASE MyTestDatabase MODIFY NAME = MyTestDatabaseCopy;
    

Fazer backup depois de renomear um banco de dados

Depois de renomear um banco de dados no SQL Server, faça backup do banco de dados master. No Banco de Dados SQL do Azure isso não é necessário, pois os backups ocorrem automaticamente.

Redefinir o banco de dados padrão após a renomeação

Se o banco de dados que você está renomeando tiver sido definido como o banco de dados padrão de um logon do SQL Server, talvez isso resulte no Erro 4064, Cannot open user default database. Use o seguinte comando para alterar o padrão para o banco de dados renomeado:

USE [master]
GO
ALTER LOGIN [login] WITH DEFAULT_DATABASE=[new-database-name];
GO

Próximas etapas