rickvanderzwet.nl

Personal notes on technology, sustainability and DIY projects

TracBackup

last updated 16-04-2021 · author: trac

Trac Backup

Trac backups are a copied snapshot of the entire project environment directory, including the database. Backups can be created using the \hotcopy\ command of trac-admin.

Note

Trac uses the \hotcopy\ nomenclature to match that of Subversion, to make it easier to remember when managing both Trac and Subversion servers.

Creating a Backup

Create a backup of a live TracEnvironment by running:

$ trac-admin /path/to/projenv hotcopy /path/to/backupdir

The database will be locked while hotcopy is running.

The resulting backup directory is safe to handle using standard file-based backup tools like \tar\ or \dump\/\restore\.

Please note, the \hotcopy\ command will not overwrite a target directory. When the target exists the operation will end with an error: \Command failed: 17 File exists:\ This is discussed in #3198.

Restoring a Backup

To restore an environment from a backup, stop the process running Trac, ie the web server or tracd, restore the contents of your backup to your project environment directory and restart the process.

If you are using a database other than SQLite, you'll need to restore the database from the dump file. The dump file is saved in the environment \db\ directory.

To restore a PostgreSQL database backup, use the command:

$ psql -U <user> -d <database> -f /path/to/postgresql.dump

The \<database>\ option is the same as the database connection string in the "[trac database"] option of the project's \trac.ini\ file.

Similarly, for MySQL:

$ mysql -u <user> -p <database> < /path/to/mysql.dump

See also: TracAdmin, TracEnvironment, TracMigrate

Download as: plain text