Discussion:
Restaurar BD con diferentes nombres lógicos
(demasiado antiguo para responder)
charly-g
2012-05-31 16:18:15 UTC
Permalink
Hola a todos

Necesito una ayudita con una instruccion RESTORE
Necesito restaurar un backup en otro servidor (remoto) en el cual puede y
existir dicha base, por lo que es necesario restaurarla con OTRO NOMBRE

Utilizo la siguiente instrucción RESTORE

RESTORE DATABASE [NuevoNombre] FROM DISK = N'Serverbdbase.bak' WITH FILE = 1
MOVE N'NombreOriginal' TO N'c:Archivos de programaMicrosoft SQ
ServerMSSQL10.SQLEXPRESSMSSQLDATANuevoNombre.mdf', MOVE N'NombreOriginal_log
TO N'c:Archivos de programaMicrosoft SQ
ServerMSSQL10.SQLEXPRESSMSSQLDATANombreOriginal_1.LDF', NOUNLOAD, REPLACE,
STATS = 1


Lo que yo necesito es lograr cambiar el nombre lógico de los archivo
(NombreOriginal y NombreOriginal_log) en la misma instruccion RESTORE

(Lo cual puedo hacer en una segunda instrucción con ALTER DATBASE d
MODIFY FILE NombreOriginal NAME = NombreOriginal, NEWNAME = NuevoNombre pero N
me sirve porque al momento de restaurar el backup si ya existía la bas
va a pisar los archivos o bien no me dejaría restaurarlo

¿como puedo lograrlo en la misma instrucción

Muchas gracias!
César Rosero
2016-08-09 23:44:43 UTC
Permalink
Hola a todos!
Necesito una ayudita con una instruccion RESTORE.
Necesito restaurar un backup en otro servidor (remoto) en el cual puede ya
existir dicha base, por lo que es necesario restaurarla con OTRO NOMBRE.
RESTORE DATABASE [NuevoNombre] FROM DISK = N'Serverbdbase.bak' WITH FILE = 1,
MOVE N'NombreOriginal' TO N'c:Archivos de programaMicrosoft SQL
ServerMSSQL10.SQLEXPRESSMSSQLDATANuevoNombre.mdf', MOVE N'NombreOriginal_log'
TO N'c:Archivos de programaMicrosoft SQL
ServerMSSQL10.SQLEXPRESSMSSQLDATANombreOriginal_1.LDF', NOUNLOAD, REPLACE,
STATS = 10
Lo que yo necesito es lograr cambiar el nombre lógico de los archivos
(NombreOriginal y NombreOriginal_log) en la misma instruccion RESTORE.
(Lo cual puedo hacer en una segunda instrucción con ALTER DATBASE db
MODIFY FILE NombreOriginal NAME = NombreOriginal, NEWNAME = NuevoNombre pero NO
me sirve porque al momento de restaurar el backup si ya existía la base
va a pisar los archivos o bien no me dejaría restaurarlo)
¿como puedo lograrlo en la misma instrucción?
Muchas gracias!
Estimado adjunta esto a tu consulta


----CAMBIAR NOMBRE LOGICO


--Consultar nombres actuales
use NombreBaseDatos;
go
select * from sysfiles

--Para cambiar el nombre lógico
USE master
GO
ALTER DATABASE NombreBaseDatos
MODIFY FILE ( NAME = 'NombreLogicoActual',
NEWNAME = 'NuevoNombreLogico')
GO

Loading...