Premiere version : mise en route du suivi.
[auf_roundup.git] / doc / mysql.txt
1 =============
2 MySQL Backend
3 =============
4
5 :version: $Revision: 1.13 $
6
7 This notes detail the MySQL backend for the Roundup issue tracker.
8
9
10 Prerequisites
11 =============
12
13 To use MySQL as the backend for storing roundup data, you also need 
14 to install:
15
16 1. MySQL RDBMS 4.0.18 or higher - http://www.mysql.com. Your MySQL
17    installation MUST support InnoDB tables (or Berkeley DB (BDB) tables
18    if you have no other choice). If you're running < 4.0.18 (but not <4.0)
19    then you'll need to use BDB to pass all unit tests. Edit the
20    ``roundup/backends/back_mysql.py`` file to enable DBD instead of InnoDB.
21 2. Python MySQL interface - http://sourceforge.net/projects/mysql-python
22
23 Running the MySQL tests
24 =======================
25
26 Roundup tests expect an empty MySQL database. Two alternate ways to provide 
27 this:
28
29 1. If you have root permissions on the MySQL server, you can create 
30    the necessary database entries using the follwing SQL sequence. Use
31    ``mysql`` on the command line to enter::
32
33        CREATE DATABASE rounduptest;
34        USE rounduptest;
35        GRANT ALL PRIVILEGES ON rounduptest.* TO rounduptest@localhost
36             IDENTIFIED BY 'rounduptest';
37        FLUSH PRIVILEGES;
38
39 2. If your administrator has provided you with database connection info, 
40    you can modify MYSQL_* constants in the file test/test_db.py with 
41    the correct values.
42
43 The MySQL database should not contain any tables. Tests will not 
44 drop the database with existing data.
45
46
47 Showing MySQL who's boss
48 ========================
49
50 If things ever get to the point where that test database is totally hosed,
51 just::
52
53   $ su -
54   # /etc/init.d/mysql stop
55   # rm -rf /var/lib/mysql/rounduptest
56   # /etc/init.d/mysql start
57
58 and all will be better (note that on some systems, ``mysql`` is spelt
59 ``mysqld``).
60