39
|
1 = Trac Storage - The Environment =
|
|
2
|
|
3 Trac uses a directory structure and a database for storing project data.
|
|
4
|
|
5 == Creating an Environment ==
|
|
6
|
|
7 A new Trac environment is created using [wiki:TracAdmin trac-admin]:
|
|
8 {{{
|
|
9 $ trac-admin /path/to/projectenv initenv
|
|
10 }}}
|
|
11
|
|
12 [wiki:TracAdmin trac-admin] will ask you for the name of the project, the
|
|
13 database connection string (explained below), and where your subversion
|
|
14 repository is located.
|
|
15
|
|
16 ''Note: The web server user will require file system write permission to
|
|
17 the environment directory and all the files inside. Please remember to set
|
|
18 the appropriate permissions. The same applies to the Subversion
|
|
19 repository, although Trac will only require read access as long as you're
|
|
20 not using the BDB file system.''
|
|
21
|
|
22 == Database Connection Strings ==
|
|
23
|
|
24 Since version 0.9, Trac supports both [http://sqlite.org/ SQLite] and
|
|
25 [http://www.postgresql.org/ PostgreSQL] as database backends. The default
|
|
26 is to use SQLite, which is probably sufficient for most projects. The database file
|
|
27 is then stored in the environment directory, and can easily be
|
|
28 [wiki:TracBackup backed up] together with the rest of the environment.
|
|
29
|
|
30 The connection string for an embedded SQLite database is:
|
|
31 {{{
|
|
32 sqlite:db/trac.db
|
|
33 }}}
|
|
34
|
|
35 If you want to use PostgreSQL instead, you'll have to use a different
|
|
36 connection string. For example, to connect to a database on the same
|
|
37 machine called `trac`, that allows access to the user `johndoe` with
|
|
38 the password `letmein`, use:
|
|
39 {{{
|
|
40 postgres://johndoe:letmein@localhost/trac
|
|
41 }}}
|
|
42
|
|
43 If PostgreSQL is running on a non-standard port (for example 9342), use:
|
|
44 {{{
|
|
45 postgres://johndoe:letmein@localhost:9342/trac
|
|
46 }}}
|
|
47
|
|
48 Note that with PostgreSQL you will have to create the database before running
|
|
49 `trac-admin initenv`.
|
|
50
|
|
51 == Directory Structure ==
|
|
52
|
|
53 An environment directory will usually consist of the following files and directories:
|
|
54
|
|
55 * `README` - Brief description of the environment.
|
|
56 * `VERSION` - Contains the environment version identifier.
|
|
57 * `attachments` - Attachments to wiki pages and tickets are stored here.
|
|
58 * `conf`
|
|
59 * `trac.ini` - Main configuration file. See TracIni.
|
|
60 * `db`
|
|
61 * `trac.db` - The SQLite database (if you're using SQLite).
|
|
62 * `plugins` - Environment-specific [wiki:TracPlugins plugins] (Python eggs)
|
|
63 * `templates` - Custom environment-specific templates.
|
|
64 * `site_css.cs` - Custom CSS rules.
|
|
65 * `site_footer.cs` - Custom page footer.
|
|
66 * `site_header.cs` - Custom page header.
|
|
67 * `wiki-macros` - Environment-specific [wiki:WikiMacros Wiki macros].
|
|
68
|
|
69 ----
|
|
70 See also: TracAdmin, TracBackup, TracIni, TracGuide
|