SQL Server 2016 – Backup to URL mit dem Ola Hallengren Skript
This post might contain affiliate links. We may earn a commission if you click and make a purchase. Your support is appreciated!
In meinem letzten Beitrag zum Thema Backup to Azure habe ich die Möglichkeiten SQL Server Backups in die Azure Cloud zu erstellen angefangen zu erläutern, hierzu möchte ich kurz einen Nachtrag bringen. Viele von euch kennen und nutzen die Backup Skripte von Ola Hallengren, auch diese bieten die Möglichkeiten eines „Backup to URL“. Hierbei gibt es auch etwas zu beachten, ich habe hier meine Tests damit ebenfalls dokumentiert.
Backup to URL mit Ola Hallengren
Wenn man sich un ganz unbedarft des Sache annimmt und – so wie ich – seine ersten Tests mit dem Azure Blob Storage und den Backup to URL macht, dann wird man leider schnell an einen Punkt kommen, wo man doch ein wenig recherchieren und nachdenken muss. 😉
Aber der Reihe nach, ich hatte einen Credential gemäß dem Powershell-Skript angelegt:
CREATE CREDENTIAL [https://backupdemostorage.blob.core.windows.net/backupdemocontainer] WITH IDENTITY='Shared Access Signature', SECRET='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
Danach konnte ich einwandfrei meine Backups in den Azure Blog Storage erstellen und diese dort auch auffinden.
Wie man aus der Dokumentation bzw Beispielen von Ola Hallengrens Backup Skripten entnehmen kann, benötigen wir zur Ausführung des OH-Backups die URL und ein Credential.
Ok, beides habe ich (siehe oben)… also eingefügt und ausgeführt…
EXECUTE dbo.DatabaseBackup @Databases = 'USER_DATABASES', @URL = 'https://backupdemostorage.blob.core.windows.net/backupdemocontainer', @Credential = 'https://backupdemostorage.blob.core.windows.net/backupdemocontainer', @BackupType = 'FULL', @Compress = 'Y', @Verify = 'Y'
Sieht zwar lustig aus, ist aber anscheinend so, wenn ich den Output aus dem Powershell-Skript verwende => URL und Credential sind identisch. Die Ausführung des obigen Backups ergibt aber leider einen Fehler 🙁
Anscheinend setzt Ola Hallengren die Werte anders in den Backup Befehl ein, so dass es hier zu einem Fehler kommt. Und in der Tat, nach einigem Suchen und Lesen, bin ich dem Problem näher gekommen. Der Backup Befehl des SQL Servers kennt eine Option „Credential“, welche durch das Skript gefüllt wird.
CREDENTIAL Used only when creating a backup to the Windows Azure Blob storage service.
Die Erläuterungen hierzu sind aber auch nicht wirklich großzügig gefüllt… aber man findet in der der MSDN unter Best Practices zum Thema „Backup to URL“ weitere Hinweise. So gibt es einen Unterschied in der Anlage der Credentials bzw der Rechte-Vergabe, die mit den „Shared Access Signatures“ (siehe Powershell Output) wesentlich umfangreicher bzw detaillierter möglich sind. Also muss man sich vor Anlage bzw Einrichtung einer Backup-to-URL Sicherung Gedanken machen, wie man welche Datenbanken sichern möchte bzw wohin mit welchen Rechten bzw Credentials. Microsoft empfiehlt die Credentials für ein Backup-to-URL mit folgendem Statement anzulegen.
IF NOT EXISTS (SELECT * FROM sys.credentials WHERE credential_identity = 'mycredential') CREATE CREDENTIAL <credential name> WITH IDENTITY = 'mystorageaccount' ,SECRET = '<storage access key> ;
Wenn man nun diese zusätzlichen Credentials angelegt hat und im Backup-Statement hinterlegt hat, dann funktioniert auch das Ola Hallengren Backup-Skript in Richtung Azure Storage Blob.
This post might contain affiliate links. We may earn a commission if you click and make a purchase. Your support is appreciated!
Björn arbeitet auch weiterhin aus Mexiko als Senior Consultant – Microsoft Data Platform und Cloud für die Kramer&Crew in Köln. Auch der Community bleibt er aus der neuen Heimat treu, er engagiert sich auf Data Saturdays oder in unterschiedlichen Foren. Er interessiert sich neben den Themen rund um den SQL Server, Powershell und Azure SQL für Science-Fiction, Backen 😉 und Radfahren.
Amazon.com Empfehlungen
Damit ich auch meine Kosten für den Blog ein wenig senken kann, verwende ich auf diese Seite das Amazon.com Affiliate Programm, so bekomme ich - falls ihr ein Produkt über meinen Link kauft, eine kleine Provision (ohne zusätzliche Kosten für euch!).
Auto Amazon Links: Keine Produkte gefunden.