Partilhar via


Renomear um banco de dados

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

Este artigo descreve como renomear um banco de dados definido pelo usuário no SQL Server, Banco de Dados SQL do Azure ou Instância Gerenciada do SQL do Azure, usando o SQL Server Management Studio (SSMS) ou o Transact-SQL (T-SQL). O nome do banco de dados pode incluir quaisquer caracteres que sigam 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.

Limitaçõ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.

    • Use o Monitor de Atividade do SSMS para localizar outras conexões com o banco de dados e feche-as. Para obter mais informações, consulte Open Activity Monitor no SQL Server Management Studio (SSMS).

    • No SQL Server, você pode definir um banco de dados no modo de usuário único para fechar quaisquer conexões abertas. Para obter mais informações, consulte definir o banco de dados no modo de utilizador único.

    • No Banco de Dados SQL do Azure, você deve certificar-se de que nenhum outro usuário tenha uma conexão aberta com o banco de dados a ser renomeado.

  • Renomear um banco de dados não altera o nome físico dos arquivos de banco de dados no disco ou os nomes lógicos dos arquivos. Para obter mais informações, consulte ficheiros de base de dados e grupos de ficheiros.

  • Não é possível renomear um banco de dados SQL do Azure configurado em uma relação de de replicação geográfica ativa.

Permissões

Requer permissão ALTER no banco de dados.

Usar o SQL Server Management Studio (SSMS)

Use as etapas a seguir para renomear um SQL Server ou um banco de dados SQL do Azure usando o SSMS.

  1. No SSMS, selecione Pesquisador de Objetos. Para abrir Pesquisador de Objetos, pressione F8. Ou, no menu superior, selecione Exibir >Pesquisador de Objetos:

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

  3. Certifique-se de que não há conexões abertas com o 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 quaisquer conexões abertas e impedir que outros usuários se conectem enquanto você altera o nome do banco de dados.

  4. No Explorador de Objetos, expanda Bases de Dados, clique com o botão direito do rato no banco de dados que deseja renomear e selecione Renomear.

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

  6. Se o banco de dados era seu banco de dados padrão, consulte Redefinir seu banco de dados padrão após renomear.

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

Utilize Transact-SQL

Renomeie 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 T-SQL no SSMS, incluindo as etapas para colocar o banco de dados no modo de usuário único. Após a renomeação, este exemplo coloca o banco de dados novamente no modo multiusuário.

  1. Conecte-se ao banco de dados master para a 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.

    Advertência

    Para obter acesso exclusivo rapidamente, o exemplo de código usa a opção de terminação WITH ROLLBACK IMMEDIATE. Isso faz com que todas as transações incompletas sejam revertidas e quaisquer outras conexões com o banco de dados MyTestDatabase sejam imediatamente desconectadas.

    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
    
  4. Opcionalmente, se o banco de dados for seu banco de dados padrão, consulte Redefinir seu banco de dados padrão após renomear.

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 T-SQL no SQL Server Management Studio.

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

  2. Abra uma janela de consulta.

  3. Certifique-se de que ninguém está 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;
    

Backup após 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, esse processo não é necessário, pois os backups ocorrem automaticamente.

Redefinir seu banco de dados padrão após renomear

Se o banco de dados que você está renomeando foi definido como o banco de dados padrão de um logon do SQL Server, eles podem encontrar o Erro 4064, Can't 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