MS-SQL-Server + T-SQL+Batch

Mitglied: kallewirsch

kallewirsch (Level 1) - Jetzt verbinden

24.10.2016 um 13:30 Uhr, 1216 Aufrufe, 4 Kommentare

Hallo Gemeinde,

mal wieder ein Problem aus dem Bereich des MS-SQL-Servers.

Folgendes Thema:
Nachts sollen automatisch Backups der DBen im SQL-Server laufen, kein Thema läuft super. Jedoch gibt es das ein oder andere Thema im Bezug auf vorhandene Plattenkapazität. Will heißen, bevor die Sicherung startet, muss mit Systemmitteln geprüft werden, ob genügend Plattenplatz vorhanden ist.

Habt Ihr einen Ansatz, mit dem dies umgesetzt werden kann? Nach Möglichkeit ohne Anwendung von Drittsoftware...

Beste Grüße
(kleiner)kallewirsch
Mitglied: it-frosch
24.10.2016 um 13:52 Uhr
Hallo kallewirsch,

wenn nicht genügend Platz vorhanden ist wird deine Sicherung nicht komplett durchgeführt.
Das ist identisch mit nicht durchgeführt.

Ich würde an deiner Stelle mich lieber um ausreichend Platz für das Backup kümmern.
Vor 4 Wochen hatte ich das Thema auch und es ist wirklich der bessere Weg.

Ich verwende für das DB Backup https://ola.hallengren.com/sql-server-backup.html">https://ola.hallengren.com/sql-server-backup.html
Wenn du jetzt zum Beispiel wenig Platz hast dann behälst du halt nicht die letzten 7 Tages Versionen deiner Datenbank sondern nur die von den letzten 2 Tagen. Oder du vergrößerst die Abstände vom incr. Backup.

Das wären ein paar Ideen.

grüße vom it-frosch
Bitte warten ..
Mitglied: kallewirsch
24.10.2016 um 14:37 Uhr
Hallo it-frosch,

danke für Deine Anmerkungen / Verweise.

Absolut richtig ist, das auf dem Ziel des Backups genügend ausreichender Platz vorhanden sein muss, dies muss aber vor dem Start des Backups geprüft werden.
Hier für such ich Anregungen, der Rest läuft automatisch.

Beste Grüße
kallewirsch
Bitte warten ..
Mitglied: MadMax
25.10.2016 um 18:43 Uhr
Hallo Kalle,

die Größe des Backups sollte in etwa der Menge der Daten in der Datenbankdatei entsprechen. Die kannst Du durch die Funktion FileProperty erfahren:
Die Dateigröße und die genutzten Daten sind in DB-Seiten angegeben, was 8 KB entspricht (zumindest auf unserem SQL Server 2008R2). Die Abfrage oben gibt Dir die Größe also in KB aus.

Die einzelnen Datenbanken kannst Du über sys.databases ermitteln, damit Du dann die Abfrage oben in einer Schleife ausführen kannst.

Daß die Größe des Backups in etwa den genutzten Daten entspricht, gilt natürlich nur, wenn die Sicherung nicht komprimiert ist. Wie klein sie bei der Komprimierung wird, wenn Ihr das einsetzt, wird von Euren Daten abhängen und da wirst Du dann mit irgendeinem Erfahrungswert die Berechnung durchführen müssen. Der Erfahrungswert könnte ja auch durch die Backups dann automatisch angepaßt werden.

Den freien Plattenplatz könntest Du z.B. über xp_cmdshell ermitteln, indem Du entweder eine Batchdatei aufrufst, die Dir den Wert ermittelt und nur diesen Wert zurückgibt oder aber einfach nur ein "dir x:" ausführst und die letzte Zeile, die den freien Speicher angibt, per substring zerlegst.

Oder die Steuerung der Sicherung und dann eben auch die Prüfung erfolgt eh von außen und Du kannst mittels sqlcmd einfach nur die Datenmengen ermitteln.

So, als Anregung war es das jetzt. Die Ausführung überlasse ich dem geneigten Leser

Gruß, Mad Max
Bitte warten ..
Mitglied: atze187
27.10.2016 um 13:37 Uhr
Letztlich kein probates Mittel, da die Größe des Backups nicht vorhersagbar ist. Daher ist der Ansatz von @it-frosch die einzig richtige Lösung.
Bitte warten ..
Heiß diskutierte Inhalte
Windows Server
Hyper-V Server vs Datacenter?
holliknolliFrageWindows Server26 Kommentare

Hallo, hat jemand Erfahrung mit dem - kostenlosen - Hyper-V-Server? Ich meine, warum teure Lizenzen für Datacenter zahlen, wenn ...

LAN, WAN, Wireless
Spanning Tree Probleme
gelöst predator66FrageLAN, WAN, Wireless12 Kommentare

Hallo, wir haben hier eigenartige Spanningtree Probleme, die wir zur Zeit nicht gelöst bekommen: New Root Port MAC ist ...

Exchange Server
Zustellbestätigung deaktivieren
defiant01FrageExchange Server10 Kommentare

Hallo, ich stehe vor der Aufgabe bei einem Postfach die Zustellbestätigung für eingehende Mails zu deaktivieren. Der User geht ...

Notebook & Zubehör
Business Support HP, Dell, Lenovo etc
fuzzyLogicFrageNotebook & Zubehör10 Kommentare

Moin, ich arbeite derzeit fast ausschließlich mit HP und frage mich wie es auf Support Baustelle bei anderen Herstellern ...

E-Mail
Ticketsystem mit mailflow
CraftdorFrageE-Mail8 Kommentare

Hallo, Ich bin auf der Suche nach einem Ticketsystem das am besten Freeware ist und einfach nur eine Ankommende ...

Netzwerkgrundlagen
PfSense Virtuele IP mit NAT auf eine IP im VLAN90 zum VLAN30
OIOOIOOIOIIOOOIIOIIOIOOOFrageNetzwerkgrundlagen8 Kommentare

Guten Tag, ich stehe hier mit einer neuen Herausforderung. Hab ein Internetradio, welches jedoch nur mit eine App gesteuert ...

Ähnliche Inhalte
Batch & Shell
Microsoft SQL Server Sicherung per Batch
gelöst fuguFrageBatch & Shell8 Kommentare

Hey ho ihr Batch und Datenbank Spezis! Über ein installiertes SQL Management Studio kann man ja einfach per Rechtsklick ...

Batch & Shell

SAP HANA SQL Abfrage per Batch auslösen und in CSV schreiben

gelöst ShihayazadFrageBatch & Shell7 Kommentare

Hallo zusammen, ich habe folgendes Problem, wir haben ein SAP System, das ich von außen mit einer .sql ansprechen ...

Batch & Shell

Hilfe bei SQL Befehl für Ausgabe der Daten über Batch in .txt

gelöst freshman2017FrageBatch & Shell3 Kommentare

Guten Tag liebe Gemeinde, ich habe folgende Batch: In der SQL-Datenbank stehen die Werte wie folgt: Wie kann ich ...

Batch & Shell

Hilfe bei SQL Befehl für Eingabe der Daten in Datenbank über Batch aus .csv

gelöst freshman2017FrageBatch & Shell2 Kommentare

Guten Tag! Ich habe folgende .csv Datei die ich über Batch regelmäßig in eine MS SQL Datenbank schreiben /updaten ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT