wiki:TracBackup

Version 5 (modified by trac, 8 weeks ago) ( diff )

--

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.

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: [Errno 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

Note: See TracWiki for help on using the wiki.