Google Website Translator Gadget

viernes, 20 de diciembre de 2013

Aturar serveis SQLServer amb Scripts per fer BackUp a xarxa.

Aturar serveis SQLServer

En molts casos les aplicacions petites no tenen previst cap mena de sistema de BackUp i cal improvisar algun. Vet aquí uns passos que poden ser útils per a aquesta feina, segons a quin nivell vulguis arribar:



  1. Aturar serveis SQLServer manualment + còpia
  2. Aturar serveis des de script sense forçar el Administrador
  3. Fer la còpia a xarxa

Aturar serveis SQLServer + còpia

A priori aquesta es una part força simple i facil de realitzar. Normalment es pot aturar un servei amb la instrucció net stop servei
Opció (Windows 7)
Interactiu (si ets administrador)
Ho pots fer directment amb l'opció Administrar i el botó d'aturar el servei

Batch Interactiu(Malgrat ser administrador)
Per a fer-ho amb línia de comandes, cal executar forçar l'execució com administrador (Run As- Executa'l com a Adminsitrador)
NET STOP MSSQL$SQLEXPRESS
NET STOP SQLWriter

Ja pots fer la còpia de les carpetes de dades

Aturar serveis des de script sense forçar el Administrador

Per a fer-ho, cal un truc, un accés directe indicant que cal executar-ho com a Administrador.
Pas
Crear un batch amb les instruccionsNET STOP MSSQL$SQLEXPRESS
NET STOP SQLWriter
Crear accés directe i modificar-lo per marcar el flag d'Administrador


Fer la còpia a xarxa

Quan un script s'executa en el context del Administrador, no hi han les connexions a la xarxa que té el usuari normal.
Com aconseguir fer la còpia a la xraxa, doncs?
L'única manera que he trobat es partir-ho en 2 pasos que executarà el usuari:
Pas
Afegir al batch d'aturada de SQLServer els passos de còpia localset v_origen=C:\Program Files (x86)\Microsoft SQL Server\MSSQL.1\MSSQL\Data
set v_desti=C:\TEMP\MSSQL\Data
ROBOCOPY "%V_ORIGEN%" "%v_desti%" /S /TEE /NC /NS /NJH /NJS /NP /XX /XJ /R:0
Crear accés directe i modificar-lo per marcar el flag d'AdministradorVist en el pas anterior.
Crear un 2on Batch que faci la còpia a xarxa. En aquest no cal permisos d'Administradorset v_origen=C:\TEMP\MSSQL\Data
set v_desti=Y:\BackUp\SQLDATA
ROBOCOPY "%V_ORIGEN%" "%v_desti%" /S /TEE /NC /NS /NJH /NJS /NP /XX /XJ /R:0






No hay comentarios:

Publicar un comentario