Nelle settimane passate mi sono trovato, a causa di una migrazione server, nella necessità di dover eseguire il backup di decine e decine di database MSSQL.
Piuttosto di andare a manina a fare il backup dei singoli db ho pensato di impiegare un po’ del mio tempo a creare uno script in VBS che mi permettesse di eseguire tutti i backup dei DB su quella macchina e che potessi riutilizzarlo in una seconda evenienza.
On Error Resume Next
strComputer = “.”
Dim sDBUser
Dim sDBPwd
Dim sDBServer
Dim sDBName‘*************************************************************
‘PARTE DA CONFIGURARE A SECONDA DELLE PROPRIE IMPOSTAZIONI
‘utente con cui accedere a MSSQL
sDBUser = “sa”
‘password utente con cui accedere a MSSQL
sDBPwd = “sasa”
‘ nome istanza MSSQL
sDBServer = “.”
‘path di destinazione dei file di backup
backupPath = “C:Test”
‘*************************************************************
Set oSQLServer = CreateObject(“SQLDMO.SQLServer”)
Set oDataBase = Server.CreateObject(“SQLDMO.Database”)
Set oBackup = CreateObject(“SQLDMO.Backup”)oSQLServer.LoginTimeout = 30
oSQLServer.LoginSecure = True
‘ Stringa di connessione al DB server
oSQLServer.Connect sDBServer, sDBUser, sDBPwd‘ recupero la lista di database…
For Each oDataBase In oSQLServer.Databases
‘se la lista non è vuota…
If oDataBase.SystemObject = False Then
‘ recupero il nome del DB
sDBName = oDataBase.Name
‘ eseguo il backup del DB nel caso esista già sovrascrivo
oBackUp.Initialize = “TRUE”
oBackup.Database = sDBName
oBackup.Action = SQLDMOBackup_Database
oBackup.Files = backupPath & sDBName & “.bak”
oBackup.SQLBackup oSQLServer
End If
NextoSQLServer.Close()
Questo script mi ha permesso con un solo clic di andare ad eseguire il backup di più di 50 DB.
Per utilizzarlo basta impostare il nome dell’istanza, un utente di connessione , la password di quell’utente, la cartella di destinazione dei file e il gioco è fatto.
Ora basta prendere i file di backup, spostarli sul nuovo server e ripristinarli….
….RIPRISTINARE OLTRE 50 DB?!?!?!?!?!
…tranquilli ho creato uno script anche per quello….ma lo pubblico un’altra volta!!!
Cristina
Trovo il tuo articolo molto utile. Aspetto con ansia di poter sapere come poter ripristinare più db in un’unica volta e non come dici tu “a manina”.
Grazie.
Ciao
Stefano
Questo script è fantastico… fammi sapere quando pubblichi quello per il ripristino
Grazie