MSSQL
Allgemein
- Installation per Ansible-Playbook
- läuft als Docker auf srv3306.lej.eis.network
- MSSQL 2022 ist lizenzpflichtig
- 2019 kann als Developer-Version kostenlos genutzt werden
- Microsoft hat eine eigene Docker-Registry mcr.microsoft.com, die im nexus3-docker.lej.eis.network als Repo angelegt ist
- der Prefix mcr.microsoft.com kann entfallen
also docker pull mssql/server:2019-latest - MSSQL-Agent ist in der Rolle explizit eingeschaltet und ermöglicht Services wie z.B. regelmäßige Dumps durch den Benutzer zu aktivieren
DB-Schemen
- BGM_Live
- BGM_Test
- BGM_UAT
- OneA_Test
- PPDB
Backup
Pfad zu den Dumps:
/srv/exx/z_backups/mssql
erfolgt per Dupliati. Vor dem Backup der Daten wird ein Dump per Script gestartet.
- /srv/mssql/duplicati-mssql-BGM_Live-dump-before-backup.sh
- /srv/mssql/duplicati-mssql-BGM_Test-dump-before-backup.sh
- /srv/mssql/duplicati-mssql-BGM_UAT-dump-before-backup.sh
- /srv/mssql/duplicati-mssql-OneA_Test-dump-before-backup.sh
- /srv/mssql/duplicati-mssql-PPDB-dump-before-backup.sh
Dump
Beispiel
docker exec -it mssql /opt/mssql-tools/bin/sqlcmd -S "localhost" -U SA -P XXXXXXXX -d master -Q "BACKUP DATABASE [BGM_Live] TO DISK = N'/var/opt/mssql/backup/BGM_Live.bak' WITH NOFORMAT, NOINIT, NAME = N'BGM_Live-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Wiederherstellung
Dump-File ggf. per duplicati wiederherstellen
Dann
Beispiel
docker exec -it mssql /opt/mssql-tools/bin/sqlcmd -S "localhost" -U SA -P XXXXXXXX -d master -Q "RESTORE DATABASE [BGM_Live] FROM DISK = N'/var/opt/mssql/backup/BGM_Live.bak' WITH FILE = 1, MOVE N'BGM_Live' TO N'/var/opt/mssql/data/BGM_Live.mdf', MOVE N'BGM_Live_log' TO N'/var/opt/mssql/data/BGM_Live_log.ldf', NOUNLOAD, STATS = 5"
No comments to display
No comments to display