Version 1 (modified by jun66j5, 21 months ago) (diff)

New hack TracMigratePlugin, created by jun66j5

Migrate to new environment and another database


The plugin provides migrate command which migrates to new environment and another database for trac-admin.

Bugs/Feature Requests

Existing bugs and feature requests for TracMigratePlugin are here.

If you have any issues, create a new ticket.


Download the zipped source from here.


You can check out TracMigratePlugin from here using Subversion, or browse the source with Trac.



Install the plugin:

For Trac 0.12.x and 1.0dev

Enable the plugin in trac.ini:

tracmigrate.* = enabled


$ trac-admin /var/trac/blah-sqlite migrate /var/trac/blah-psql postgres://tracuser:password@localhost/trac?schema=blah
Copying tables:
  attachment table... done.
  auth_cookie table... done.
  cache table... done.
  component table... done.
  enum table... done.
  milestone table... done.
  node_change table... done.
  permission table... done.
  report table... done.
  repository table... done.
  revision table... done.
  session table... done.
  session_attribute table... done.
  ticket table... done.
  ticket_change table... done.
  ticket_custom table... done.
  version table... done.
  wiki table... done.
Copying directories:
  attachments/ directory... done.
  htdocs/ directory... done.
  templates/ directory... done.
  plugins/ directory... done.

Recent Changes

[13809] by jun66j5 on 2014-04-03 07:51:11
tracmigrate: prevent AssertionError from PooledConnection.__del__ on Python interpreter's termination
[13808] by jun66j5 on 2014-04-03 07:48:22

tracmigrate: improved creating environment for robust migration because environment_created() of plugins might be untested and buggy

  1. create environment without plugins
  2. enable plugins
  3. upgrade environment
[13807] by jun66j5 on 2014-04-03 07:32:38
tracmigrate: fixed not copying tables after system if non inplace mode


Author: jun66j5
Maintainer: jun66j5