Edgewall Software

Changes between Version 2 and Version 3 of Trac Backup


Ignore:
Timestamp:
Dec 10, 2015, 6:49:23 AM (8 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Trac Backup

    v2 v3  
    1 = Trac Backup =
     1= Trac Backup
     2
    23[[TracGuideToc]]
    34
    4 Since Trac uses a database backend, some extra care is required to safely create a backup of a [wiki:TracEnvironment project environment]. Luckily, [wiki:TracAdmin trac-admin] has a command to make backups easier: `hotcopy`.
     5Backups are simply a copied snapshot of the entire [wiki:TracEnvironment project environment] directory, including the database. Backups can be created using the `hotcopy` command in [wiki:TracAdmin trac-admin].
    56
    6   ''Note: Trac uses the `hotcopy` nomenclature to match that of [http://subversion.tigris.org/ Subversion], to make it easier to remember when managing both Trac and Subversion servers.''
     7'''Note''': Trac uses the `hotcopy` nomenclature to match that of [http://subversion.tigris.org/ Subversion], to make it easier to remember when managing both Trac and Subversion servers.
    78
    8 == Creating a Backup ==
     9== Creating a Backup
    910
    10 To create a backup of a live TracEnvironment, simply run:
    11 {{{
    12   $ trac-admin /path/to/projenv hotcopy /path/to/backupdir
     11To create a backup of a live TracEnvironment simply run:
     12{{{#!sh
     13$ trac-admin /path/to/projenv hotcopy /path/to/backupdir
    1314}}}
    1415
    15 [wiki:TracAdmin trac-admin] will lock the database while copying.''
     16[wiki:TracAdmin trac-admin] will lock the database while copying.
    1617
    1718The resulting backup directory is safe to handle using standard file-based backup tools like `tar` or `dump`/`restore`.
    1819
    19 === Restoring a Backup ===
     20Please note, the `hotcopy` command will not overwrite a target directory and when such exists, the operation ends with an error: `Command failed: [Errno 17] File exists:` This is discussed in [trac:ticket:3198 #3198].
    2021
    21 Backups are simply a copied snapshot of the entire [wiki:TracEnvironment project environment] directory, including the SQLite database.
     22=== Restoring a Backup
    2223
    23 To restore an environment from a backup, simply stop the process running Trac (i.e. the Web server or [wiki:TracStandalone tracd]), restore the directory structure from the backup and restart the service.
     24To restore an environment from a backup, stop the process running Trac, ie the Web server or [wiki:TracStandalone tracd], restore the contents of your backup (path/to/backupdir) to your [wiki:TracEnvironment project environment] directory and restart the service.
    2425
    25   ''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.''
     26To restore a PostgreSQL database backup, use the command:
     27{{{#!sh
     28psql -U <user> -d <database> -f postgresql.dump
     29}}}
     30The `<database>` option is the same as the [TracEnvironment#DatabaseConnectionStrings database connection string] in the `[trac]` `database` option of //trac.ini//.
    2631
    2732----
    28 See also: TracAdmin, TracEnvironment, TracGuide
     33See also: TracAdmin, TracEnvironment, TracGuide, [trac:TracMigrate TracMigrate]