1
0
mirror of https://github.com/bitwarden/server.git synced 2025-02-16 01:51:21 +01:00

Improve mssql backups (#298)

* Improve mssql backups

* Launch DB backup at 23:59
This commit is contained in:
Mart124 2018-05-29 14:17:43 +02:00 committed by Kyle Spearrin
parent ecf75c2a66
commit 8471f558e3
3 changed files with 10 additions and 9 deletions

View File

@ -1,7 +1,11 @@
#!/bin/sh
# Delete backup files older than 30 days
find /etc/bitwarden/mssql/backups/ -type f -name '*.BAK' -mindepth 1 -mtime +30 -delete
# Backup timestamp
export now=${1:-$(date +%Y%m%d_%H%M%S)}
# Do a new backup
/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P ${SA_PASSWORD} -i /backup-db.sql
# Delete backup files older than 30 days
grep -B1 "BACKUP DATABASE successfully" /var/opt/mssql/log/errorlog | grep -q _$now.BAK &&
find /etc/bitwarden/mssql/backups/ -mindepth 1 -type f -name '*.BAK' -mtime +32 -delete

View File

@ -1,11 +1,8 @@
DECLARE @TheDate NVARCHAR(20)
SET @TheDate = REPLACE(CONVERT(VARCHAR, GETDATE(),101),'/','') + '_' + REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')
DECLARE @BackupFile varchar(100)
SET @BackupFile = '/etc/bitwarden/mssql/backups/vault_FULL_'+ @TheDate + '.BAK'
SET @BackupFile = '/etc/bitwarden/mssql/backups/vault_FULL_$(now).BAK'
DECLARE @BackupName varchar(100)
SET @BackupName = 'vault full backup for '+ @TheDate
SET @BackupName = 'vault full backup for $(now)'
DECLARE @BackupCommand NVARCHAR(1000)
SET @BackupCommand = 'BACKUP DATABASE [vault] TO DISK = ''' + @BackupFile + ''' WITH INIT, NAME= ''' + @BackupName + ''', NOSKIP, NOFORMAT'

View File

@ -1,3 +1,3 @@
0 0 * * * bitwarden /backup-db.sh >> /var/log/cron.log 2>&1
59 23 * * * bitwarden /backup-db.sh >> /var/log/cron.log 2>&1
# An empty line is required at the end of this file for a valid cron file.
# An empty line is required at the end of this file for a valid cron file.