Como renomear uma instância do SQL Server 2008?

28

Como posso renomear uma instância do SQL Server 2008 sem reinstalar?

Por exemplo, se o banco de dados for referenciado como "MySQLServer \ MSSQL2008", como posso renomear para "MySQLServer \ SQL2008"?

    
por Scott Marlowe 21.09.2009 / 22:14

6 respostas

31

Eu não acho que é possível renomear sem instalar.

Existem vestígios do nome em alguns bancos de dados internos, como replicação, e você pode encontrar erros mais tarde.

Se você puder, a menos que tenha mais de uma instância, é melhor desativá-la e importá-la novamente.

    
por 21.09.2009 / 22:32
9

Eu sei que este script é onipresente em toda a net, mas sempre que eu pesquiso no Google, eu procuro procedimentos elaborados que são um exagero para minhas necessidades - então aqui estão os comandos necessários para renomear uma instância do SQL Server, para posteridade :

  • Obtenha o nome atual da instância do SQL Server para comparação posterior.
    SELECT @@servername
  • Remova o servidor da lista de servidores remotos e vinculados conhecidos na instância local do SQL Server.
    EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘
  • Defina o nome da instância local do SQL Server.
    EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’
  • Obtenha o novo nome da instância do SQL Server para comparação. %código%

E algumas notas relacionadas ao seu uso: sp_dropserver :

  1. Esse procedimento armazenado pode remover servidores remotos e vinculados;
  2. O uso do parâmetro droplogins indica que os logins do servidor remoto e vinculado relacionados para [NOME DO SERVIDOR] também devem ser removidos.

sp_addserver :

  1. Para definir um servidor vinculado, use sp_addlinkedserver (pois essa funcionalidade será depreciada na versão acima do SQL Server 2005);
  2. sp_addserver não pode ser usado dentro de uma transação definida pelo usuário.

Eu também recomendaria o seguinte ao renomear um SQL Server:
Se você estiver executando essa tarefa como parte de uma renomeação de máquina, renomeie a máquina primeiro e renomeie o SQL Server. Depois de ter renomeado o SQL Server, faça uma reinicialização completa do SQLServer, incluindo qualquer serviço dependente.

Eu recebi esta informação no link abaixo:

link

    
por 11.07.2010 / 19:59
1

Apenas uma observação rápida de que você pode adicionar um "alias" e usá-lo em ambos os nomes:

    
por 06.07.2014 / 01:28
0

select @@servername mostrará o novo nome, mas o nome do servidor em ERRORLOG mostrará o nome antigo e você não poderá se conectar usando o novo nome.

A única solução é reinstalar.

    
por 26.02.2013 / 16:47
-1

Este blog parece indicar que é muito fácil.

link

    
por 23.09.2009 / 18:51
-4

Você gostaria de usar o ALTER DATABASE.

link

Nesta situação, para o seu exemplo acima, eu tentaria:

ALTER DATABASE MSSQL2008 MODIFY NAME = 'SQL2008'

Boa sorte!

    
por 21.09.2009 / 22:26