EulandaXtools — Funktionsreferenz
Erstellt ein Backup einer SQL Server-Datenbank und überträgt es optional per SFTP und/oder in ein lokales Archiv.
Backup-MssqlDatabase [[-RemoteServer] <string>] [[-Port] <int>] [[-Certificate] <string>] [[-User]
<string>] [[-PasswordPath] <string>] [[-Password] <securestring>] [[-PlainPassword] <string>]
[[-RemoteFolder] <string>] [[-StorageFolder] <string>] [-RemoveBak] [[-History] <int>] [[-Conn]
<__ComObject>] [[-Udl] <string>] [[-ConnStr] <string>] [<CommonParameters>]Sichert eine Datenbank via T-SQL `BACKUP DATABASE` in das Standard-Backupverzeichnis der SQL-Instanz. Je nach Parametern:
-Conn
Type: __ComObjectOffene ADODB.Connection. Alternative zu -Udl oder -ConnStr.
-Udl
Type: stringPfad zu einer UDL-Datei mit Verbindungsdaten.
-ConnStr
Type: stringVerbindungszeichenfolge als Text.
-StorageFolder
Type: stringLokales Ziel (z. B. NAS). Dorthin wird die ZIP mit Zeitstempel kopiert. History wird dort angewendet.
-RemoveBak
Type: switchLöscht die erzeugte `.bak` nach erfolgreicher Verarbeitung.
-History
Type: int
Default: 3Anzahl der aufzubewahrenden ZIPs je Ziel (lokal & remote). 0 ⇒ alles ist „veraltet“.
-RemoteServer
Type: stringSFTP-Server (Name oder IP).
-Port
Type: int
Default: 22SFTP-Port (Standard: 22).
-User
Type: stringSFTP-Benutzername.
-PasswordPath
Type: stringPfad zu Passwortdatei (CLIXML mit SecureString oder Klartext). Höchste Priorität.
-Password
Type: securestringSFTP-Passwort als SecureString.
-PlainPassword
Type: stringSFTP-Passwort im Klartext.
-Certificate
Type: stringOptionaler Pfad zu privatem Schlüssel/Zertifikat für Key-Auth (falls deine SFTP-Wrapper das unterstützen).
-RemoteFolder
Type: stringZielordner auf dem SFTP-Server. Die Funktion hängt zusätzlich den SQL-Instanznamen an.
stringVollständiger Pfad der finalen ZIP- oder BAK-Datei (auf dem SQL-Server).
# Backup als ZIP, zusätzlich ins NAS, History 5
Backup-MssqlDatabase -Udl 'C:\Eulanda\EULANDA_1.udl' -StorageFolder '\\nas\sqlbackup' -History 5# Backup als ZIP per SFTP (Passwort aus Datei), danach .bak löschen
Backup-MssqlDatabase -Udl 'C:\Daten\prod.udl' -RemoteServer 'sftp.example.com' -User 'backup' -PasswordPath "$HOME\.secrets\sftp.xml" -RemoteFolder '/backup/sql' -RemoveBak