2024-08-03 16:03:17 +02:00
---
title: Restore database from SSH
layout: default
parent: How Tos
nav_order: 6
---
# Restore database from SSH remote server
2024-08-10 10:50:00 +02:00
To restore the database from your remote server, you need to add `restore` command and specify the file to restore by adding `--file store_20231219_022941.sql.gz` .
2024-08-03 16:03:17 +02:00
{: .note }
It supports _ _ .sql__ and _ _ .sql.gz__ compressed file.
### Restore
``` yml
services :
mysql-bkup :
# In production, it is advised to lock your image tag to a proper
# release version instead of using `latest`.
# Check https://github.com/jkaninda/mysql-bkup/releases
# for a list of available releases.
image : jkaninda/mysql-bkup
container_name : mysql-bkup
2024-08-10 10:50:00 +02:00
command : restore --storage ssh -d my-database -f store_20231219_022941.sql.gz --path /home/jkaninda/backups
2024-08-03 16:03:17 +02:00
volumes :
- ./backup:/backup
environment :
- DB_PORT=3306
- DB_HOST=postgres
- DB_NAME=database
- DB_USERNAME=username
- DB_PASSWORD=password
## SSH config
- SSH_HOST_NAME="hostname"
- SSH_PORT=22
- SSH_USER=user
- SSH_REMOTE_PATH=/home/jkaninda/backups
- SSH_IDENTIFY_FILE=/tmp/id_ed25519
## We advise you to use a private jey instead of password
#- SSH_PASSWORD=password
# mysql-bkup container must be connected to the same network with your database
networks :
- web
networks :
web :
2024-08-04 11:42:07 +02:00
```
## Restore on Kubernetes
2024-08-04 13:37:45 +02:00
Simple Kubernetes restore Job:
2024-08-04 11:42:07 +02:00
``` yaml
apiVersion : batch/v1
2024-08-04 13:37:45 +02:00
kind : Job
2024-08-04 11:42:07 +02:00
metadata :
2024-08-04 13:37:45 +02:00
name : restore-db
2024-08-04 11:42:07 +02:00
spec :
2024-08-04 13:37:45 +02:00
template :
2024-08-04 11:42:07 +02:00
spec :
2024-08-04 13:37:45 +02:00
containers :
- name : mysql-bkup
image : jkaninda/mysql-bkup
command :
2024-08-04 11:42:07 +02:00
- /bin/sh
- -c
2024-09-09 07:17:15 +02:00
- restore -s ssh -f store_20231219_022941.sql.gz
2024-08-04 13:37:45 +02:00
env :
- name : DB_PORT
value : "3306"
- name : DB_HOST
value : ""
- name : DB_NAME
value : ""
- name : DB_USERNAME
value : ""
# Please use secret!
- name : DB_PASSWORD
value : ""
- name : SSH_HOST_NAME
value : ""
- name : SSH_PORT
value : "22"
- name : SSH_USER
value : "xxx"
- name : SSH_REMOTE_PATH
value : "/home/jkaninda/backups"
- name : AWS_ACCESS_KEY
value : "xxxx"
- name : SSH_IDENTIFY_FILE
value : "/tmp/id_ed25519"
restartPolicy : Never
backoffLimit : 4
2024-08-03 16:03:17 +02:00
```