OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
openproject/docs/operations/backup/packaged/backup.md

99 lines
2.8 KiB

# Backup your OpenProject installation
**Note:** this guide only applies if you've installed OpenProject using our DEB/RPM packages.
We advise to backup your OpenProject installation regularly — especially before upgrading to a newer version.
## What should be backed up
In general the following parts of your OpenProject installation should be backed up:
- Data stored in the database
- Configuration files
- Uploaded files (attachments)
- Repositories (typically subversion) if applicable
## How to backup
The DEB/RPM packages provide a backup tool which can be used to take a snaphsot
of the current OpenProject installation. This tool will create a backup of
all parts mentioned above. The backup tool is used by executing the following
command:
```
sudo openproject run backup
```
The command will create backup files in the following location on your system
```
/var/db/openproject/backup
```
The content of that directory should look very similar to the following (depending on your used database, you will see either a `mysql-dump-<date>.sql.gz` or a `postgresql-dump-<pgdump>` file).
```bash
root@test-packager-backup:/opt/openproject# ls -l /var/db/openproject/backup/
total 24
-rw-r----- 1 openproject openproject 117 Apr 8 09:55 attachments-20150408095521.tar.gz
-rw-r----- 1 openproject openproject 667 Apr 8 09:55 conf-20150408095521.tar.gz
-rw-r----- 1 openproject openproject 8298 Apr 8 09:55 mysql-dump-20150408095521.sql.gz
-rw-r----- 1 openproject openproject 116 Apr 8 09:55 svn-repositories-20150408095521.tar.gz
```
## How to restore
The backup created with the tool consists of four parts
which are all compressed using `gzip`. Except the database dump these parts
can be restored by decompressing the `*.tar.gz` files and copy the content to the
proper location. The command to untar and unzip the `*.tar.gz` files looks like
this (using sample file names from above):
```bash
tar vxfz attachments-20150408095521.tar.gz
```
### Database
The `<dbuser>`, `<dbhost>` and `<dbname>` variables have to be replaced with
the values that are container in the `DATABASE_URL` setting of your
installation. This setting can be seen by running:
```
openproject config:get DATABASE_URL
#=> e.g.: mysql2://dbusername:dbpassword@dbhost:dbport/dbname
```
#### PostgreSQL
To restore the PostgreSQL dump please use the `pg_restore` command utilities.
```bash
pg_restore -h <dbhost> -u <dbuser> -W <dbname>
```
First the dump has to be extracted (unzipped) and then restored. The command
used should look very similar to this:
#### MySQL
To restore the MySQL dump it is recommended to use the `mysql` command line client.
First the dump has to be extracted (unzipped) and then restored. The command
used should look very similar to this:
```bash
zcat mysql-dump-20150408095521.sql.gz | mysql -u <dbuser> -h <dbhost> -p <dbname>
```