Por defecto (nombre del servidor:
sp_dropserver NombreServidorAntiguo
GO
sp_addserver NuevoNombreServidor, local
GO
Instancia
sp_dropserver NombreServfidorAntiguo\NombreInstanciaAntigua
GO
sp_addserver NombreservidorNuevo\NombreInstanciaNueva, local
GO
Clúster:
Usar el Adminitrador de Clúster:
Poner 'offline' SQL Server y volver a ponerlo de nuevo en linea.
En todos los casos, una vez cambiado el nombre verificar que haya funcionado
Select @@servername
Recordar que habrá que manualmente modificar los paquetes SSIS para actualizar conel nuevo nombre del servidor/instancia
Ejemplo de error:
Description: Failed to acquire connection "Local server connection". Connection may not be configured correctly or you may not have the right permissions on this connection. End Error Warning: 2011-02-21 10:35:27.16 Code: 0x80019002 Source: OnPreExecute
Hay un script que facilita las cosas. Está publicado en MSDN aunque ellos no lo crearan y se curen en salud diciendo que no admiten responsabilidades. funcionar funciona bien
use msdb
DECLARE @oldservername as varchar(max)
SET @oldservername='\'
-- set the new server name to the current server name
declare @newservername as varchar(max)
set @newservername=@@servername
declare @xml as varchar(max)
declare @packagedata as varbinary(max)
-- get all the plans that have the old server name in their connection string
DECLARE PlansToFix Cursor
FOR
SELECT id
FROM sysdtspackages90
WHERE (CAST(CAST(packagedata AS varbinary(MAX)) AS varchar(MAX)) LIKE '%server=''' + @oldservername + '%')
OPEN PlansToFix
declare @planid uniqueidentifier
fetch next from PlansToFix into @planid
while (@@fetch_status<>-1) -- for each plan
begin
if (@@fetch_status<>-2)
begin
select @xml=cast(cast(packagedata as varbinary(max)) as varchar(max)) from sysdtspackages90 where id= @planid -- get the plan's xml converted to an xml string
declare @planname varchar(max)
select @planname=[name] from sysdtspackages90 where id= @planid -- get the plan name
print 'Changing ' + @planname + ' server from ' + @oldservername + ' to ' + @newservername -- print out what change is happening
set @xml=replace(@xml,'server=''' + @oldservername + '''','server=''' + @newservername +'''') -- replace the old server name with the new server name in the connection string
select @packagedata=cast(@xml as varbinary(max)) -- convert the xml back to binary
UPDATE sysdtspackages90 SET packagedata = @packagedata WHERE (id= @planid) -- update the plan
end
fetch next from PlansToFix into @planid -- get the next plan
end
close PlansToFix
deallocate PlansToFix
Más información:
cómo renombrar una instancia de SQL (inglés) 2008R2
Cómo renombrar una instancia 2005 (incluye scipts par amodificar SSIS)
Cómo renombrar un clúster