![]() |
Vollbackup einer SQL Server Datenbank erstellen
Der folgende Code erzeugt ein Vollbackup einer MS SQL Server 2000/2005/2008 Datenbank.
Man benötigt dazu eine aktive ADO-Connection zur Datenbank. Die Zieldatei kann nur auf einer lokalen Festplatte des Servers liegen. Der angemeldete Datenbankbenutzer muss die Serverrolle "diskadmin" haben, damit er Backups erstellen darf.
Delphi-Quellcode:
procedure BackupSQLServerDB(const con:TADOConnection);
var DB : string; filename:string; ci : IUnknown; SQL : string; begin DB := con.Properties.Item['Initial Catalog'].Value; filename := Format('C:\%s_%s.BAK', [DB, FormatDateTime('d_mmm_yyyy', Date)]); if InputQuery('Dateiname der Backup Datei', 'Dateiname (nur lokale Serverplatten)', filename) then begin ci := DisplayCursor(crSQLWait); SQL := 'BACKUP DATABASE '+DB+' TO DISK = '+QuotedStr(filename)+ ' WITH INIT,SKIP'; con.CommandTimeout := 60 * 8; // = 8 Minuten con.Execute(SQL); end; end; |
Re: Vollbackup einer SQL Server Datenbank erstellen
Also ich würde anstatt
Delphi-Quellcode:
eher
filename := Format('C:\%s_%s.BAK', [DB, FormatDateTime('d_mmm_yyyy', Date)]);
Delphi-Quellcode:
verwenden, da man dann die Dateien leichter nach dem Datum sortieren kann.
filename := Format('C:\%s_%s.BAK', [FormatDateTime('yyyymmdd', Date), DB]);
|
Re: Vollbackup einer SQL Server Datenbank erstellen
Und vielleicht sollte man den Zielpfad als Parameter übergeben lassen und ggf. auf lokales Laufwerk prüfen. Es ist ja immerhin möglich, dass es kein Laufwerk C: gibt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz