He desarrollado un programa en V.B. contra sQL 2005 EXPORESS
Pues bien, tengo un problema con el SQL 2005 EXPRESS, saque un backup de ese
sql Server 2005 de una BBDD, ahora quiero restaurarlo en otra BBDD idéntica
de otra máquina también con SQL 2005 EXPRESS pero me sale el siguiente
error: Error: 3205 se especificaron demasiados dispositivos para la copia de
seguridad o restauración. Solo se permiten 64. Y no se como solucionarlo por
favor alguna sugerencia de solución????
Esta es la sentecia que utilizo para el BACKUP-
SQL = "BACKUP DATABASE Clientes
SQL = SQL + " TO DISK = '"
SQL = SQL + "\Clientes.bak'"
SQL = SQL + " WITH NOINIT, NOSKIP, STATS = 10"
Y esta para el RESTORE:
SQL = "RESTORE DATABASE Clientes"
SQL = sConsultaSQL + " FROM DISK = 'C:\Clientes.bak'"
Muchas gracias
Un saludo
saludos
Mauro S. Brizuela
MCTS - SQL Server 2005
"Ana Arranz" <anaa...@hotmail.com> wrote in message
news:uN579kvO...@TK2MSFTNGP04.phx.gbl...
Lo 1º es darte las gracias
Si, si que tengo 1 instancia con SQL 2000 y otra con 2005, pero estoy
conectado a la de 2005 en ambos servidores.
He corrido lo que me indicas y esta es la salida en ambos servidores.
Microsoft SQL Server 2005 - 9.00.2047.00 (Intel X86) Apr 14 2006 01:12:25
Copyright (c) 1988-2005 Microsoft Corporation Express Edition with Advanced
Services on Windows NT 5.1 (Build 2600: Service Pack 2)
Alguna otra idea?
Un saludo
"Mauro SB." <msbri...@gmail.com> escribió en el mensaje
news:%23RID21v...@TK2MSFTNGP04.phx.gbl...
saludos
Mauro S. Brizuela
MCTS - SQL Server 2005
"Ana Arranz" <anaa...@hotmail.com> wrote in message
news:O16pt%23vOHH...@TK2MSFTNGP03.phx.gbl...
Encontré el problema. Resulta que por código había una conexión a SQL 2000 y
la conexion tomaba esa instancia.
El problema es que ahora al intentar restaurar me reporta el siguiente
error:
"RESTORE no puede procesar la Base de Datos Clientes porque está en uso en
esta sesión. Se recomienda utilizar la Base de Datos master para realizar
esta operación."
Sabes cual puede ser ahora el problema?
Un saludo
"Mauro SB." <msbri...@gmail.com> escribió en el mensaje
news:ObFIpewO...@TK2MSFTNGP06.phx.gbl...
Hahamos una prueba.
use master
go
restore headeronly
FROM DISK = 'C:\Clientes.bak
go
Fijate en la columna [Position], del set que tenga la fecha
[BackupStartDate] mas reciente (ultimo backup) y cuyo valor de [BackupType] =
1 (full backup). Usa ese valor para hacer el restore.
restore database Clientes
FROM DISK = 'C:\Clientes.bak
with file = ? -- aqui pon el # que apaprece en la columna [Position]
go
Cuentanos si te resulto.
AMB
saludos
Mauro S. Brizuela
MCTS - SQL Server 2005
"Ana Arranz" <anaa...@hotmail.com> wrote in message
news:eHV4Ikw...@TK2MSFTNGP06.phx.gbl...
Un saludo
"Mauro SB." <msbri...@gmail.com> escribió en el mensaje
news:%23uq7Qow...@TK2MSFTNGP02.phx.gbl...
De todas formas muchas gracias. Muy amable.
Un saludo
"Alejandro Mesa" <Alejan...@discussions.microsoft.com> escribió en el
mensaje news:586E85EA-CC4F-4DC0...@microsoft.com...
Otra cosa, y hay alguna forma a la hora de hacer el BACKUP de evitar que en
BACKUP´s sucesivos te vaya juntando las versiones?
Muchas gracias de nuevo
Un saludo
"Alejandro Mesa" <Alejan...@discussions.microsoft.com> escribió en el
mensaje news:586E85EA-CC4F-4DC0...@microsoft.com...
Vamos por parte, si:
> Como puedo saber cual es la última versión que tengo que restaurar? Pruebo
> eso que me dices y me dá erro.
1 - Cual es el error que te da?
2 - En mi mensaje anterior explique que en el resultado de la sentencia
"restore headeronly" existen tres columnas fundamentales [BackupType] para
saber el tipo de backup (full, deferancial, log de transacciones, etc.),
[Position] que es la posicion que ocupa ese set (cada backup es considerado
un set) dentro de ese archivo, y [BackupStartdate] que es la fecha-hora en
que comenzo ese backup, por lo que el set que tenga la fecha mas reciente
sera el ultimo. Si analyzas todos los backups de un mismo tipo, digamos 1
(full), el que tenga la fecha mas reciente sera el ultimo que hicistes de ese
tipo y si quieres restaurarlo debes usar la columna [Position] en la opcio
"with file" de la sentencia restore.
> Otra cosa, y hay alguna forma a la hora de hacer el BACKUP de evitar que en
> BACKUP´s sucesivos te vaya juntando las versiones?
Si cuando se hace el backup indicas la opcion "with init" entonces el
archivo sera sobre-escrito y solo contendra el backup mas reciente. Mucho
cuidado con esta opcion porque una vez sobreescrito el archivo ya no podras
accesar a los backups previos. Una solucion seria usar un nuevo archivo por
cada backup que hagas, a cuyo nombre puedes agragar fecha-hora-minutos en la
que ocurre el backup.
Ejemplo:
use master
go
declare @s varchar(256)
set @s = 'C:\Temp\Northwind_' + replace(replace(replace(convert(varchar(16),
getdate(), 126), '-', ''), ':', '_'), 'T', '_') + '.bak'
backup database northwind
to disk = @s
with init
go
AMB
> y verifica que nadie este utilizando la BD(lo mas facil es reiniciar el
> servicio si es que no tienes otras bds en producion)
Eso no es necesario. Puedes usar la sentencia "alter database" para sacar
cualquier conexion hacia ella.
Ejemplo:
use master
go
backup database northwind
to disk = 'C:\temp\northwind.bak'
with init
go
alter database northwind
set SINGLE_USER
with ROLLBACK IMMEDIATE
go
restore database northwind
from disk = 'C:\temp\northwind.bak'
with recovery
go
use northwind
go
exec sp_helpdb northwind
go
AMB
Gracias por todo.
Un saludo
"Alejandro Mesa" <Alejan...@discussions.microsoft.com> escribió en el
mensaje news:F87CC5B1-624E-408A...@microsoft.com...
Mauro S. Brizuela
MCTS - SQL Server 2005
"Alejandro Mesa" <Alejan...@discussions.microsoft.com> wrote in message
news:D91B33C9-D93F-4814...@microsoft.com...
> > > ufff que bueno, me parecia que el 2000 estaba al medio ya que ese error
> es
> > > comun cuando realizas el restore de 2005 a 2000.
Se me olvido decirte que fue una buena atrapada por tu parte.
Saludos,
Alejandro Mesa