Backup-MssqlDatabase

EulandaXtools — Funktionsreferenz

Backup-MssqlDatabase

ÜBERSICHT

Erstellt ein Backup einer SQL Server-Datenbank und überträgt es optional per SFTP und/oder in ein lokales Archiv.

SYNTAX

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>]

BESCHREIBUNG

Sichert eine Datenbank via T-SQL `BACKUP DATABASE` in das Standard-Backupverzeichnis der SQL-Instanz. Je nach Parametern:

PARAMETER

-Conn

Type: __ComObject

Offene ADODB.Connection. Alternative zu -Udl oder -ConnStr.

-Udl

Type: string

Pfad zu einer UDL-Datei mit Verbindungsdaten.

-ConnStr

Type: string

Verbindungszeichenfolge als Text.

-StorageFolder

Type: string

Lokales Ziel (z. B. NAS). Dorthin wird die ZIP mit Zeitstempel kopiert. History wird dort angewendet.

-RemoveBak

Type: switch

Löscht die erzeugte `.bak` nach erfolgreicher Verarbeitung.

-History

Type: int
Default: 3

Anzahl der aufzubewahrenden ZIPs je Ziel (lokal & remote). 0 ⇒ alles ist „veraltet“.

-RemoteServer

Type: string

SFTP-Server (Name oder IP).

-Port

Type: int
Default: 22

SFTP-Port (Standard: 22).

-User

Type: string

SFTP-Benutzername.

-PasswordPath

Type: string

Pfad zu Passwortdatei (CLIXML mit SecureString oder Klartext). Höchste Priorität.

-Password

Type: securestring

SFTP-Passwort als SecureString.

-PlainPassword

Type: string

SFTP-Passwort im Klartext.

-Certificate

Type: string

Optionaler Pfad zu privatem Schlüssel/Zertifikat für Key-Auth (falls deine SFTP-Wrapper das unterstützen).

-RemoteFolder

Type: string

Zielordner auf dem SFTP-Server. Die Funktion hängt zusätzlich den SQL-Instanznamen an.

AUSGABEN

string

Vollständiger Pfad der finalen ZIP- oder BAK-Datei (auf dem SQL-Server).

BEISPIELE

# 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