ECS-Webhosting bietet Shared-Webhosting, Server, VServer unter Windows 2003, Windows 2008 und Linux, ueber 300 TLD Domains registrieren aus einer Hand sowie Microsoft Hosted Exchange 2003 Loesung KontaktKontakt
Deutschland: 0800 4 967 967 00
Ausland: +49 911 4 967 967 00

MSSQL Datenbank per Skript sichern

Expand / Collapse
 
     

MSSQL Datenbank per Skript sichern


Unser Datenbankserver sichert automatisch jede Nacht um 01:00 Ihre Datenbank. Trotzdem kann es vorkommen, dass Sie ein aktuelles Backup machen möchten. Dies können Sie entweder über ein SQL-Tool z.B. MS SQL Server Management Studio, welches aber kostenpflichtig ist oder einfach über einen SQL-Befehl, den Sie über Ihre Webseite starten. Die Programmiersprache spielt dabei keine Rolle.

Hier ein Beispiel für ASP:

<%
'Hier Ihre Verbindungsdaten zur Datenbank eintragen (hier TCP-Port 10433):
sConnectionstring = 
"Driver={SQL Server};Server=db.IHREDOMAIN,10433;Database=IHREDATENBANK;Uid=IHRBENUITZER;Pwd=IHRPASSWORT;"

'Datenbankverbindung aufbauen:
Set Conn=Server.Createobject("ADODB.Connection")
Conn.Open sConnectionstring

'SQL für Backup
'Achtung: 1 Zeile, kein Zeilenumbruch!
sSQL = "BACKUP DATABASE [IHREDATENBANK] TO  [IHREDATENBANK_full] WITH  DESCRIPTION = N'Vollsicherung',  RETAINDAYS = 7, NOFORMAT, INIT, NAME = N'Datenbank Sicherung', SKIP, NOREWIND, NOUNLOAD,  STATS = 10;"

'Abfrage ausführen:
Conn.Execute sSQL

'Datenbankverbindung ordentlich beenden:
Conn.Close
Set Conn = Nothing
%>

Wenn die Datenbanksicherung nie überschrieben werden soll und zusätzlich nach der Sicherung noch eine Prüfung stattfinden soll, dann können Sie diesen alternativen SQL Befehl verwenden:

'Kein Verfalldatum, Datensicherung überschreiben:
sSQL = "BACKUP DATABASE [IHREDATENBANK] TO  [IHREDATENBANK_full] WITH  DESCRIPTION = N'Vollsicherung', NOFORMAT, INIT,  NAME = N'Datenbank Sicherung', SKIP, NOREWIND, NOUNLOAD,  STATS = 10;"
Conn.Execute sSQL

sSQL = "declare @backupSetId as int"
Conn.Execute sSQL

sSQL = "select @backupSetId = position from msdb..backupset where database_name=N'IHREDATENBANK' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N'IHREDATENBANK' );"
Conn.Execute sSQL

sSQL = "if @backupSetId is null begin raiserror(N'Fehler beim Überprüfen. Sicherungsinformationen für die IHREDATENBANK-Datenbank wurden nicht gefunden.', 16, 1) end"
Conn.Execute sSQL

sSQL = "RESTORE VERIFYONLY FROM  [IHREDATENBANK_full] WITH  FILE = @backupSetId,  NOUNLOAD,  NOREWIND;"
Conn.Execute sSQL

Deinen Kommentar hinzufügen


Name: *
Email Address:
Webseite:
Prüfcode:
*
 

Details
Zuletzt geändert:Dienstag, 1. Juli 2008
Zuletzt geändert von: Administrator
Typ: HOWTO
Stufe: Novice
Beitrag noch nicht bewertet.
Beitrag wurde 1.858* angeschaut.
Optionen

Benötigen Sie Hilfe?
 
------------------
------------------
 
 
------------------
------------------
  Folge uns:
 
Twitter Facebook

© 2001 by ECS-Webhosting Nürnberg