diff --git a/_articles/hosting/backup-on-premise.md b/_articles/hosting/backup-on-premise.md index 0251071c..c4df158a 100644 --- a/_articles/hosting/backup-on-premise.md +++ b/_articles/hosting/backup-on-premise.md @@ -23,23 +23,25 @@ Some particularly important parts of the `./bwdata` directory are: Bitwarden will automatically take nightly backups of the `mssql` container database. These database backups are kept in the `./bwdata/mssql/backups` directory. Nightly database backups are kept in this directory for 30 days. In the event of data loss, you can restore one of these daily backups. -## Restoring a nightly backup -1. Go to your Bitwarden installation and execute an interactive bash shell on the `bitwarden-mssql` container. +### Restoring a nightly backup + +1. Execute an interactive bash shell on the `bitwarden-mssql` container. + + docker exec -it bitwarden-mssql /bin/bash + +2. Take note of the backup file you wish to restore in the nightly backups directory. The backups directory is mapped from a host volume at `./bwdata/mssql/backups` to `/etc/bitwarden/mssql/backups` within the `bitwarden-mssql` container. + + ls /etc/bitwarden/mssql/backups + + For this example, the backup we will be using is named `vault_FULL_20200302_235901.BAK`, which is a backup of the vault database on March 2, 2020 at 11:53pm. The full path of the backup in the container would be `/etc/bitwarden/mssql/backups/vault_FULL_20200302_235901.BAK` - ``` - docker exec -it bitwarden-mssql /bin/bash - ``` -2. Take note of the backup file you wish to restore in the nightly backups directory. The directory here is a host volume for `./bwdata/mssql/backups`. - ``` - ls /etc/bitwarden/mssql/backups/ - ``` - For this example, the backup we will be using is named `vault_FULL_20200302_235901.BAK`, which is a backup of the vault database on 2 March 2020 at 2359. The full path of the backup in this container would be `/etc/bitwarden/mssql/backups/vault_FULL_20200302_235901.BAK` 3. Execute `sqlcmd` with the required authentication. - ``` - /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P ${SA_PASSWORD} - ``` -4. Execute the SQL command `RESTORE DATABASE` with your backup to restore the nightly backup. - ``` - 1> RESTORE DATABASE vault FROM DISK = '/etc/bitwarden/mssql/backups/vault_FULL_20200302_235901.BAK' WITH REPLACE - 2> GO - ``` + + /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P ${SA_PASSWORD} + +4. Execute the SQL command `RESTORE DATABASE` with your backup to restore the nightly backup, followed by a `GO` command. + + RESTORE DATABASE vault FROM DISK = '/etc/bitwarden/mssql/backups/vault_FULL_20200302_235901.BAK' WITH REPLACE + GO + +Your Bitwarden database should now be restored.