thomascube
2010-02-18 29640bcfa918e9c63d6b29c25d67dc361d20bcca
commit | author | age
79fe17 1 -- RoundCube Webmail update script for MySQL databases
b2b8b1 2 -- Updates from version 0.1-stable to 0.3.1
79fe17 3
29451c 4 TRUNCATE TABLE `messages`;
T 5
f7bfec 6 ALTER TABLE `messages`
ac26b9 7   DROP INDEX `idx`,
T 8   DROP INDEX `uid`;
9
10 ALTER TABLE `cache`
f7bfec 11   DROP INDEX `cache_key`,
ac26b9 12   DROP INDEX `session_id`,
T 13   ADD INDEX `user_cache_index` (`user_id`,`cache_key`);
6cb778 14
A 15 ALTER TABLE `users`
f5e8d2 16     ADD INDEX `username_index` (`username`),
6cb778 17     ADD INDEX `alias_index` (`alias`);
d7f3d7 18
A 19 -- Updates from version 0.1.1
20
21 ALTER TABLE `identities`
f18911 22     MODIFY `signature` text, 
d7f3d7 23     MODIFY `bcc` varchar(128) NOT NULL DEFAULT '', 
A 24     MODIFY `reply-to` varchar(128) NOT NULL DEFAULT '', 
25     MODIFY `organization` varchar(128) NOT NULL DEFAULT '',
26     MODIFY `name` varchar(128) NOT NULL, 
27     MODIFY `email` varchar(128) NOT NULL; 
c98f3b 28
A 29 -- Updates from version 0.2-alpha
30
31 ALTER TABLE `messages`
32     ADD INDEX `created_index` (`created`);
be7d3b 33
A 34 -- Updates from version 0.2-beta (InnoDB only)
35
36 ALTER TABLE `cache`
dcf780 37     DROP `session_id`;
A 38     
3e48d2 39 ALTER TABLE `session`
A 40     ADD INDEX `changed_index` (`changed`);
e4d9f0 41
A 42 ALTER TABLE `cache`
43     ADD INDEX `created_index` (`created`);
debdda 44
A 45 ALTER TABLE `users`
46     CHANGE `language` `language` varchar(5);
3d601d 47
A 48 -- Updates from version 0.3-stable
49
f47e2d 50 TRUNCATE `messages`;
A 51
3d601d 52 ALTER TABLE `messages`
A 53     ADD INDEX `index_index` (`user_id`, `cache_key`, `idx`);
b2b8b1 54
V 55 ALTER TABLE `session` 
56     CHANGE `vars` `vars` MEDIUMTEXT NOT NULL;
23b765 57
A 58 ALTER TABLE `contacts`
59     ADD INDEX `user_contacts_index` (`user_id`,`email`);
8248e4 60
A 61 -- Updates from version 0.3.1
62
63 /* MySQL bug workaround: http://bugs.mysql.com/bug.php?id=46293 */
5cec0c 64 /*!40014 SET FOREIGN_KEY_CHECKS=0 */;
8248e4 65
A 66 ALTER TABLE `messages` DROP FOREIGN KEY `user_id_fk_messages`;
67 ALTER TABLE `cache` DROP FOREIGN KEY `user_id_fk_cache`;
68 ALTER TABLE `contacts` DROP FOREIGN KEY `user_id_fk_contacts`;
69 ALTER TABLE `identities` DROP FOREIGN KEY `user_id_fk_identities`;
70
71 ALTER TABLE `messages` ADD CONSTRAINT `user_id_fk_messages` FOREIGN KEY (`user_id`)
72  REFERENCES `users`(`user_id`) /*!40008 ON DELETE CASCADE ON UPDATE CASCADE */;
73 ALTER TABLE `cache` ADD CONSTRAINT `user_id_fk_cache` FOREIGN KEY (`user_id`)
74  REFERENCES `users`(`user_id`) /*!40008 ON DELETE CASCADE ON UPDATE CASCADE */;
75 ALTER TABLE `contacts` ADD CONSTRAINT `user_id_fk_contacts` FOREIGN KEY (`user_id`)
76  REFERENCES `users`(`user_id`) /*!40008 ON DELETE CASCADE ON UPDATE CASCADE */;
77 ALTER TABLE `identities` ADD CONSTRAINT `user_id_fk_identities` FOREIGN KEY (`user_id`)
78  REFERENCES `users`(`user_id`) /*!40008 ON DELETE CASCADE ON UPDATE CASCADE */;
79
5cec0c 80 /*!40014 SET FOREIGN_KEY_CHECKS=1 */;