kraemer
Goto Top

Microsoft SQL Server Express (Linux) sichern

Moin zusammen,

ich musste mich seit Jahren nicht mehr mit Datensicherungen herumschlagen. Nun ist es mal wieder so weit.

Gegeben ist:

  • ein Microsoft SQL Server Express 14.0.3460.9 auf einem Ubuntu (18.04).
  • ich habe ausschließlich per SQL zugriff auf diesen Server
  • ich habe keine Lust selbst was zu skripten / programmieren

Wie sichert man solche Maschinen heutzutage inkl. Monitoring etc?

Mal als Beispiel: Zu Hause habe ich Veeam B+R am laufen. VM's und Clients lassen sich damit prima sichern. Nur irgendwie scheint Veeam keine Möglichkeit zu bieten, eine Sql-Datenbank direkt zu sichern. Oder habe ich da was überlesen?

Kann mich hier bitte jemand in die richtige Richtung schupsen? Softwarevorschläge und auch Lesematerial / Tipps sind willkommen.

Gruß

Content-Key: 7512289809

Url: https://administrator.de/contentid/7512289809

Printed on: July 23, 2024 at 00:07 o'clock

Member: Lochkartenstanzer
Lochkartenstanzer Jun 13, 2023 at 14:14:00 (UTC)
Goto Top
Moin,

Wenn Du nur per SQL Zugriff darauf hast, bleibt Dir eigentlich nur ein Datenbankdump übrig den Du dann mit anderen Mitteln sicherst.

lks
Member: Looser27
Looser27 Jun 13, 2023 at 14:21:32 (UTC)
Goto Top
Moin,

Datenbanken über cron-job backupen und dann mit weiterem cron-job ins Ziel verschieben.

Gruß

Looser
Member: Kraemer
Kraemer Jun 13, 2023 at 14:43:53 (UTC)
Goto Top
Zitat von @Looser27:

Datenbanken über cron-job backupen und dann mit weiterem cron-job ins Ziel verschieben.
mangels Zugriff auf die Maschine (wie oben erwähnt) keine Alternative face-wink


Zitat von @Lochkartenstanzer:

Wenn Du nur per SQL Zugriff darauf hast, bleibt Dir eigentlich nur ein Datenbankdump übrig den Du dann mit anderen Mitteln sicherst.

Da stellt sich dann die Frage ob ein Dump eine echte Datensicherung ist. Weißt du zufällig ob dabei die Datenbank in einen konsistenten Zustand gebracht wird - ähnlich wie bei einer VSS-Sicherung?

Also ist in den ganzen Jahren nur die Option hinzugekommen, eine Datensicherung in einem Azure-Container abzulegen... (gerade im SQlStudio gefunden)

Ist ja ekelig das Ganze.
Member: em-pie
em-pie Jun 13, 2023 at 16:10:41 (UTC)
Goto Top
Moin,

Schau mal, ob du mit BACKUP arbeiten kannst.
Wenn der MS SQL auch unter Linux mit Jobs arbeiten kann, sollte das klappen…
Als Ziel müsstest dann mal schauen, ob du hier auf einen SMB-Pfad zugreifen kannst, damit das Backup nicht auf der Linux-Kiste liegen bleibt…
Member: Lochkartenstanzer
Lochkartenstanzer Jun 13, 2023 at 16:10:45 (UTC)
Goto Top
Zitat von @Kraemer:

Zitat von @Looser27:

Datenbanken über cron-job backupen und dann mit weiterem cron-job ins Ziel verschieben.
mangels Zugriff auf die Maschine (wie oben erwähnt) keine Alternative face-wink


Zitat von @Lochkartenstanzer:

Wenn Du nur per SQL Zugriff darauf hast, bleibt Dir eigentlich nur ein Datenbankdump übrig den Du dann mit anderen Mitteln sicherst.

Da stellt sich dann die Frage ob ein Dump eine echte Datensicherung ist. Weißt du zufällig ob dabei die Datenbank in einen konsistenten Zustand gebracht wird - ähnlich wie bei einer VSS-Sicherung?



Dazu kenne ich den ms-sql-server zu wenig. Aber im allgemeinen kann man mit einem kompletten dump i.d.r. die Datenbank auch wiederherstellen


Aber du könntest versuchsweise das MS SQL Management Studio ausprobieren. Das macht auch Backups von ms-sql-Datenbanken.

lks
Member: em-pie
em-pie Jun 13, 2023 at 17:34:49 (UTC)
Goto Top
Zitat von @em-pie:

Moin,

Schau mal, ob du mit BACKUP arbeiten kannst.
Wenn der MS SQL auch unter Linux mit Jobs arbeiten kann, sollte das klappen…
Als Ziel müsstest dann mal schauen, ob du hier auf einen SMB-Pfad zugreifen kannst, damit das Backup nicht auf der Linux-Kiste liegen bleibt…

Ggf. Kannst du, nachdem du das Backup lokal erzeugt hast, die Datei noch durch die Gegend kopieren:
https://www.sqlshack.com/t-sql-scripts-to-copy-or-remove-files-from-a-di ...

Musst du nur mal testen. Hab vom MS SQL auf ner Linux-Kiste null Erfahrung
Member: wiesi200
wiesi200 Jun 13, 2023 at 17:51:06 (UTC)
Goto Top
Zitat von @Kraemer:

Zitat von @Looser27:

Datenbanken über cron-job backupen und dann mit weiterem cron-job ins Ziel verschieben.
mangels Zugriff auf die Maschine (wie oben erwähnt) keine Alternative face-wink


Zitat von @Lochkartenstanzer:

Wenn Du nur per SQL Zugriff darauf hast, bleibt Dir eigentlich nur ein Datenbankdump übrig den Du dann mit anderen Mitteln sicherst.

Da stellt sich dann die Frage ob ein Dump eine echte Datensicherung ist. Weißt du zufällig ob dabei die Datenbank in einen konsistenten Zustand gebracht wird - ähnlich wie bei einer VSS-Sicherung?

Eigentlich sollte "vor allem" ein SQL Dump konsistent sein. Der Server ist im Funktionsumfang gerade dafür ausgelegt.

https://learn.microsoft.com/de-de/sql/relational-databases/backup-restor ...
Member: Looser27
Looser27 Jun 14, 2023 at 06:38:12 (UTC)
Goto Top
Kannst Du Dich von außen mit dem SQL Studio mit dem SQL verbinden?
Dann kannst Du die Datenbanken manuell sichern.

Leider unterstützt der SQL Express keine Wartungspläne.
Member: evgnbz
evgnbz Jun 14, 2023 at 07:27:27 (UTC)
Goto Top
Member: Crusher79
Crusher79 Jun 14, 2023 at 11:57:45 (UTC)
Goto Top
Hallo,

nur mit SQL wird es echt schwer!

https://edv-herne.de/ms-sql-express-automatische-backups-ohne-wartungspl ...

Auch hier - wie auch von @evgnbz aufgezeigt - sqlcmd oder Server Dienst stoppen und starten. Glaub fast du musst irgendwie an die Kiste ran. Oder es dem netten Admin sagen, dass er diese Scripte via cronjob abfeuern soll.

Nur mit T-SQL wirds kaum gehen. Gut, die Daten selber könnte man ggf. alx XML oder JSON ausgeben und wohin speichern. Also Queries für die 3 Mrd. Daten. Ist irgendwie unschön.

Mir fällt da auch sofort starten/ stoppen, bzw. sqlcmd ein.

Es gibt auch sowas wie "Datapump" - dafür muss aber der Server von außen erreichbar sein. RazoSQL oder dbforge - https://www.devart.com/

Kostet viel und vor allem nerven. Was ist denn das? Es sind eigentlich nur Queries die die Daten von A nach B schaufeln. Hast du DB mit wenig Daten mag das noch gehen. Geht es um Relationen etc. wird es haarig. Du würdest hier quasi die UPDATES und INSERTS der Software "nachbauen".

Wenn man es so macht, ist die Gefahr von INSERT und UPDATE Anomalien groß. Im Prinzip bist du auch viel weiter in Scripten drin, als du jemals wolltest!

Habe selber mal zwishcen SQL 2008 R2 und 2012 geschoben. In die höhrere Version kann man ja Backups einspielen. Von 2012 auf 2008 R2 sieht es dann mehr so aus, dass man Abfragen bastelt. Mehr so die Richtung die weiter oben vorgeschlagen wurde.

Server Dienst Starten/ Stoppen ist auch immer so unschön. sqlcmd geht da recht gut.



+100 für diesen Vorschlag face-wink