r3222 - include charset options for MySQL
[racktables] / README
1 Thank you for selecting RackTables as your datacenter management
2 solution. Feel free to address your questions to the mailing list
3 before contacting the authors directly. The project web-site
4 (http://racktables.org/) is usually kept up to date with the
5 current version and URLs.
6
7 Mailing list: <racktables-users/=@=/freelists.org>
8 Bug tracker and Wiki: http://racktables.org/trac
9 Authors: <info/=@=/racktables.org>
10
11 *******************************************************
12 * *
13 * INSTALLING RACKTABLES *
14 * *
15 *******************************************************
16
17 I. Install dependencies.
18
19 For database you must have a MySQL server installation
20 version 4.x or 5.x. InnoDB support must be enabled.
21 It is a good idea to make it use UTF-8 by default.
22
23 * Fedora 8/9: yum install mysql-server mysql
24 put "default-character-set=utf8" into /etc/my.cnf
25
26 * ALTLinux Desktop 4.0: apt-get install MySQL-server
27 put "CHSET=utf8" into /etc/sysconfig/mysqld
28
29 * openSUSE 11.0: YaST -> Software -> software management -> Web and LAMP server -> mysql
30 put "default-character-set=utf8" into /etc/my.cnf
31
32 For web-frontend you must have Apache and PHP 5 with PDO and multibyte
33 extensions:
34
35 * Fedora 8/9: yum install httpd php php-mysql php-pdo php-gd php-snmp php-mbstring
36
37 * ALTLinux Server 4.0: apt-get install apache2-httpd-prefork php5-gd2 \
38 php5-pdo_mysql php5-pdo apache2-mod_php5 php5-mbstring
39
40 * openSUSE 11.0: use YaST to apache2-mod_php5, php5-gd, php5-mbstring, php5-mysql,
41 php5-snmp and php5-ldap
42
43 * FreeBSD 7:
44 # make -C /usr/ports/www/apache13-modssl install
45 # make -C /usr/ports/www/php5-session install
46 [X] CLI Build CLI version
47 [X] APACHE Build Apache module
48 [X] MULTIBYTE Enable zend multibyte support
49 # make -C /usr/ports/graphics/php5-gd install
50 # make -C /usr/ports/databases/php5-pdo_mysql install
51 # make -C /usr/ports/devel/php5-pcre install
52 # make -C /usr/ports/converters/php5-mbstring install
53 [X] REGEX Enable multibyte regex support
54
55 # make -C /usr/ports/net-mgmt/php5-snmp install
56 # make -C /usr/ports/net/php5-ldap install
57
58 II. Prepare the files and database.
59 1. Unpack the tarball and make it web-accessible, e.g. http://yourcompany.com/racktables
60 or http://racktables.mysite.org.
61
62 2. Setup MySQL database:
63 mysql> CREATE DATABASE racktables_db CHARACTER SET utf8 COLLATE utf8_general_ci;
64 mysql> grant all privileges on racktables_db.* to XXX@YYY identified by 'ZZZ';
65
66
67 III. Finish the installation.
68 Open your RackTables URL and follow the instructions. In a suitable
69 environment everything should take a minute or so.
70
71 *******************************************************
72 * *
73 * UPGRADING RACKTABLES *
74 * *
75 *******************************************************
76 RackTables (since 0.14.6) provides an automatic database upgrade feature.
77 If you already have a working installation, the following procedure
78 should be sufficient:
79
80 0. BACKUP YOUR DATABASE
81 1. Remove all existing files except inc/secret.php, gateways'
82 configuration (in the gateways directory) and local mod (inc/local.php).
83 2. Unpack the new tarball into the place.
84 3. Open the RackTables page in your browser. The software detects version
85 mismatch and displays a message telling to log in as admin to finish
86 the upgrade.
87 4. Do that. Normally, everything should be Ok. If there are
88 errors displayed, copy and send them to us for review.
89
90 *******************************************************
91 * *
92 * RELEASE NOTES *
93 * *
94 *******************************************************
95
96 *** Upgrading to 0.14.12 ***
97
98 The upgrade may show a failed query "alter database character set utf8", in
99 this case the user should issue the query manually from the mysql command
100 line.
101
102 *** Upgrading to 0.16.0 ***
103
104 This release features a completely new authorization system, RackCode,
105 which brings the tags feature (introduced in 0.15.0) to its full potential.
106 The old-style user permissions are converted during upgrade automatically,
107 but the result may appear not what you would expect. Review the RackCode
108 after upgrade (Main page -> Configuration -> Permissions) and adjust,
109 if necessary.
110
111 Another important change is a new dependency on "multibyte string" PHP
112 extension. Normally one should get it working before starting the upgrade,
113 this is typically achieved by installing a particular PHP RPM from the
114 standard package repository (and restarting Apache after that):
115
116 Fedora: yum install php-mbstring
117 ALTLinux: apt-get install php5-mbstring
118
119 *** Upgrading to 0.16.3 ***
120
121 This release fixes a missing UNIQUE KEY in a table. The upgrade script may
122 find it necessary first to transform some records. Because of this it is
123 normal to see several "update TagStorage ... Duplicate entry" failed queries
124 during the upgrade.
125
126 *** Upgrading to 0.17.0 ***
127
128 One can always install RackTables 0.17.0 from scratch. However, upgrading
129 an existing installation to 0.17.0 implies a certain upgrade path. If the
130 existing database version is less, than 0.16.4, it must first be upgraded
131 to version 0.16.4, 0.16.5 or 0.16.6 (at one's choice) using appropriate
132 tar.gz distribution. The resulting 0.16.4+ database can be upgraded to
133 0.17.0 (or later version) in a normal way (with tar.gz of the desired 0.17.x
134 release).
135
136 LDAP options have been moved to LDAP_options array. This means, that if you were
137 using LDAP authentication for users in version 0.16.x, it will break right after
138 upgrade to 0.17.0. To get things working again, adjust existing secret.php file
139 according to secret-sample.php file provided with 0.17.0 release.
140
141 This release is the first to take advantage of the foreign key support
142 provided by the InnoDB storage engine in MySQL. The installer and
143 upgrader scripts check for InnoDB support and cannot complete without it.
144 If you have trouble, the first step is to make sure the 'skip-innodb'
145 option in my.cnf is commented out.
146
147 Another change is the addition of support for file uploads. Files are stored
148 in the database. There are several settings in php.ini which you may need to modify:
149 file_uploads - needs to be On
150 upload_max_filesize - max size for uploaded files
151 post_max_size - max size of all form data submitted via POST (including files)
152
153 User accounts used to have 'enabled' flag, which allowed individual blocking and
154 unblocking of each. This flag was dropped in favor of existing mean of access
155 setup (RackCode). An unconditional denying rule is automatically added into RackCode
156 for such blocked account, so the effective security policy remains the same.