Discussion:
Net Stop y Net Start desde DOS
(demasiado antiguo para responder)
Daniel G. Samborski
2005-12-13 17:16:39 UTC
Permalink
Hola, tengo un archivo bat que ejecuta los siguientes pasos.

net stop mssqlserver >> null

copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null

copy /y c:\naren\bd\naren_log.ldf c:\backup >> null

net start mssqlserver >> null

del c:\naren\null

c:\naren\Sistem~1.exe

El problema esta en que desde que hace el Nset Start y carga la aplicacion
Sistem~1.exe no ase tiempo de reactivar el servicio de la base de datos y me
tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion hasta
verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion antes
de proceguir.


Daniel.
Alejandro Mesa
2005-12-13 18:27:02 UTC
Permalink
Daniel,

Porque debes parar y reiniciar sql server para hacer esto?

En los libros en linea podras leer sobre los procedimientos sp_detach_db y
sp_attach_db, los cuales puedes usar con con xp_cmdshell o el utilitario
osql.exe para hacer la copia sin necesidad de parar el servicio.


AMB
Post by Daniel G. Samborski
Hola, tengo un archivo bat que ejecuta los siguientes pasos.
net stop mssqlserver >> null
copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null
copy /y c:\naren\bd\naren_log.ldf c:\backup >> null
net start mssqlserver >> null
del c:\naren\null
c:\naren\Sistem~1.exe
El problema esta en que desde que hace el Nset Start y carga la aplicacion
Sistem~1.exe no ase tiempo de reactivar el servicio de la base de datos y me
tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion hasta
verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion antes
de proceguir.
Daniel.
Daniel G. Samborski
2005-12-13 20:19:38 UTC
Permalink
El problema que tengo, con todo lo que he probado, es que si tengo al menos
un usuario conectado no me permite hacer un restore de la BD.
Por eso opte por detenerlo.
he probado varias cosas pero siempre me da problemas al querer restaurar el
backup.

Daniel.
Post by Alejandro Mesa
Daniel,
Porque debes parar y reiniciar sql server para hacer esto?
En los libros en linea podras leer sobre los procedimientos sp_detach_db y
sp_attach_db, los cuales puedes usar con con xp_cmdshell o el utilitario
osql.exe para hacer la copia sin necesidad de parar el servicio.
AMB
Post by Daniel G. Samborski
Hola, tengo un archivo bat que ejecuta los siguientes pasos.
net stop mssqlserver >> null
copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null
copy /y c:\naren\bd\naren_log.ldf c:\backup >> null
net start mssqlserver >> null
del c:\naren\null
c:\naren\Sistem~1.exe
El problema esta en que desde que hace el Nset Start y carga la aplicacion
Sistem~1.exe no ase tiempo de reactivar el servicio de la base de datos y me
tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion hasta
verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion antes
de proceguir.
Daniel.
Alejandro Mesa
2005-12-13 23:09:02 UTC
Permalink
Daniel,

Usa la sentencia "alter database" para ponerla en single_user y matar todas
las coneciones.

use master
go

alter database mi_db
set single_user with rollback immediate
go

restore ...


AMB
Post by Daniel G. Samborski
El problema que tengo, con todo lo que he probado, es que si tengo al menos
un usuario conectado no me permite hacer un restore de la BD.
Por eso opte por detenerlo.
he probado varias cosas pero siempre me da problemas al querer restaurar el
backup.
Daniel.
Post by Alejandro Mesa
Daniel,
Porque debes parar y reiniciar sql server para hacer esto?
En los libros en linea podras leer sobre los procedimientos sp_detach_db y
sp_attach_db, los cuales puedes usar con con xp_cmdshell o el utilitario
osql.exe para hacer la copia sin necesidad de parar el servicio.
AMB
Post by Daniel G. Samborski
Hola, tengo un archivo bat que ejecuta los siguientes pasos.
net stop mssqlserver >> null
copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null
copy /y c:\naren\bd\naren_log.ldf c:\backup >> null
net start mssqlserver >> null
del c:\naren\null
c:\naren\Sistem~1.exe
El problema esta en que desde que hace el Nset Start y carga la aplicacion
Sistem~1.exe no ase tiempo de reactivar el servicio de la base de datos y me
tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion hasta
verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion antes
de proceguir.
Daniel.
Salvador Ramos
2005-12-14 10:09:56 UTC
Permalink
Hola,

Por qué haces la copia de esta forma en vez de utilizar BACKUP DATABASE ?
--
Un saludo
Salvador Ramos
Murcia - España
------------------------------------------------
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)
------------------------------------------------
Post by Daniel G. Samborski
Hola, tengo un archivo bat que ejecuta los siguientes pasos.
net stop mssqlserver >> null
copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null
copy /y c:\naren\bd\naren_log.ldf c:\backup >> null
net start mssqlserver >> null
del c:\naren\null
c:\naren\Sistem~1.exe
El problema esta en que desde que hace el Nset Start y carga la aplicacion
Sistem~1.exe no ase tiempo de reactivar el servicio de la base de datos y
me tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion hasta
verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion
antes de proceguir.
Daniel.
Daniel G. Samborski
2005-12-14 12:47:47 UTC
Permalink
Porque de otra forma, el backup lo hace pero me da errores en el restore, no
se porque he intentado con el rollback para desactivar a los usuarios
conectados pero igual me da problemas.
Esta es la forma que encontre para hacer el backup sin que me de problemas.

Daniel.
Post by Salvador Ramos
Hola,
Por qué haces la copia de esta forma en vez de utilizar BACKUP DATABASE ?
--
Un saludo
Salvador Ramos
Murcia - España
------------------------------------------------
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)
------------------------------------------------
Post by Daniel G. Samborski
Hola, tengo un archivo bat que ejecuta los siguientes pasos.
net stop mssqlserver >> null
copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null
copy /y c:\naren\bd\naren_log.ldf c:\backup >> null
net start mssqlserver >> null
del c:\naren\null
c:\naren\Sistem~1.exe
El problema esta en que desde que hace el Nset Start y carga la
aplicacion Sistem~1.exe no ase tiempo de reactivar el servicio de la base
de datos y me tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion
hasta verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion
antes de proceguir.
Daniel.
Salvador Ramos
2005-12-14 14:48:18 UTC
Permalink
Creo que no nos estamos entendiendo.

No me refiero a hacer backup del fichero .mdf y .ldf, sino a hacer un backup
de la base de datos utilizando el mandato t-sql BACKUP DATABASE, en cuyo
caso no importa que haya conexiones abiertas.
--
Un saludo
Salvador Ramos
Murcia - España
------------------------------------------------
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)
------------------------------------------------
Post by Daniel G. Samborski
Porque de otra forma, el backup lo hace pero me da errores en el restore,
no se porque he intentado con el rollback para desactivar a los usuarios
conectados pero igual me da problemas.
Esta es la forma que encontre para hacer el backup sin que me de problemas.
Daniel.
Post by Salvador Ramos
Hola,
Por qué haces la copia de esta forma en vez de utilizar BACKUP DATABASE ?
--
Un saludo
Salvador Ramos
Murcia - España
------------------------------------------------
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)
------------------------------------------------
Post by Daniel G. Samborski
Hola, tengo un archivo bat que ejecuta los siguientes pasos.
net stop mssqlserver >> null
copy /y c:\naren\bd\Naren_Data.mdf c:\backup >> null
copy /y c:\naren\bd\naren_log.ldf c:\backup >> null
net start mssqlserver >> null
del c:\naren\null
c:\naren\Sistem~1.exe
El problema esta en que desde que hace el Nset Start y carga la
aplicacion Sistem~1.exe no ase tiempo de reactivar el servicio de la
base de datos y me tira un error ya que no se produjo la conexión.
Hay alguna forma de hacer una pausa en la ejecucion de la aplicacion
hasta verificar que se reactivo el Service Manager.
Alguna instruccion como el net start pero que verifique la activacion
antes de proceguir.
Daniel.
Continúe leyendo en narkive:
Loading...