Edgewall Software

Version 16 (modified by anonymous, 16 years ago) ( diff )

This page documents the 1.4 (latest stable) release. Documentation for other releases can be found here.

Trac Backup

Since Trac uses a database backend, some extra care is required to safely create a backup of a project environment. Luckily, trac-admin has a command to make backups easier: hotcopy.

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

To create a backup of a live TracEnvironment, simply run:

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

trac-admin will lock the database while copying.

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

Please, note, that hotcopy command does not overwrite target directory and when such exists, hotcopy ends with error: Command failed: [Errno 17] File exists: This is discussed in #3198.

Restoring a Backup

Backups are simply a copied snapshot of the entire project environment directory, including the SQLite database.

To restore an environment from a backup, simply stop the process running Trac (i.e. the Web server or tracd), restore the directory structure from the backup and restart the service.

To restore the environment from a backup you must before init the environment like that trac-admin /path/to/project/trac/ initenv After that copy the backup in the correct place (replace the files created by initenv) If you don't do an "initenv", trac won't be able to find the database path.

Note: Automatic backup of environments that don't use SQLite as database backend is not supported at this time. As a workaround, we recommend that you stop the server, copy the environment directory, and make a backup of the database using whatever mechanism is provided by the database system.


See also: TracAdmin, TracEnvironment, TracGuide, TracMigrate

Note: See TracWiki for help on using the wiki.