commit | author | age
|
e019f2
|
1 |
-- Roundcube Webmail initial database structure |
aade7b
|
2 |
|
T |
3 |
|
2bedfa
|
4 |
/*!40014 SET FOREIGN_KEY_CHECKS=0 */; |
aade7b
|
5 |
|
T |
6 |
-- Table structure for table `session` |
|
7 |
|
|
8 |
CREATE TABLE `session` ( |
b8ae0e
|
9 |
`sess_id` varchar(128) NOT NULL, |
37974e
|
10 |
`created` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
A |
11 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
84d06e
|
12 |
`ip` varchar(40) NOT NULL, |
b2b8b1
|
13 |
`vars` mediumtext NOT NULL, |
3e48d2
|
14 |
PRIMARY KEY(`sess_id`), |
A |
15 |
INDEX `changed_index` (`changed`) |
2bedfa
|
16 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
aade7b
|
17 |
|
T |
18 |
|
|
19 |
-- Table structure for table `users` |
|
20 |
|
|
21 |
CREATE TABLE `users` ( |
|
22 |
`user_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, |
d5ae97
|
23 |
`username` varchar(128) BINARY NOT NULL, |
aade7b
|
24 |
`mail_host` varchar(128) NOT NULL, |
37974e
|
25 |
`created` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
e2402e
|
26 |
`last_login` datetime DEFAULT NULL, |
debdda
|
27 |
`language` varchar(5), |
112bff
|
28 |
`preferences` text, |
6cb778
|
29 |
PRIMARY KEY(`user_id`), |
565c47
|
30 |
UNIQUE `username` (`username`, `mail_host`) |
2bedfa
|
31 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
aade7b
|
32 |
|
T |
33 |
|
|
34 |
-- Table structure for table `cache` |
|
35 |
|
|
36 |
CREATE TABLE `cache` ( |
83121e
|
37 |
`user_id` int(10) UNSIGNED NOT NULL, |
2bedfa
|
38 |
`cache_key` varchar(128) /*!40101 CHARACTER SET ascii COLLATE ascii_general_ci */ NOT NULL , |
37974e
|
39 |
`created` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
aade7b
|
40 |
`data` longtext NOT NULL, |
94fe9c
|
41 |
CONSTRAINT `user_id_fk_cache` FOREIGN KEY (`user_id`) |
A |
42 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
e4d9f0
|
43 |
INDEX `created_index` (`created`), |
8248e4
|
44 |
INDEX `user_cache_index` (`user_id`,`cache_key`) |
2bedfa
|
45 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
aade7b
|
46 |
|
T |
47 |
|
80152b
|
48 |
-- Table structure for table `cache_index` |
A |
49 |
|
|
50 |
CREATE TABLE `cache_index` ( |
48be8f
|
51 |
`user_id` int(10) UNSIGNED NOT NULL, |
80152b
|
52 |
`mailbox` varchar(255) BINARY NOT NULL, |
A |
53 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
609d39
|
54 |
`valid` tinyint(1) NOT NULL DEFAULT '0', |
80152b
|
55 |
`data` longtext NOT NULL, |
A |
56 |
CONSTRAINT `user_id_fk_cache_index` FOREIGN KEY (`user_id`) |
|
57 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
58 |
INDEX `changed_index` (`changed`), |
|
59 |
PRIMARY KEY (`user_id`, `mailbox`) |
|
60 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
|
61 |
|
|
62 |
|
|
63 |
-- Table structure for table `cache_thread` |
|
64 |
|
|
65 |
CREATE TABLE `cache_thread` ( |
48be8f
|
66 |
`user_id` int(10) UNSIGNED NOT NULL, |
80152b
|
67 |
`mailbox` varchar(255) BINARY NOT NULL, |
A |
68 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
|
69 |
`data` longtext NOT NULL, |
|
70 |
CONSTRAINT `user_id_fk_cache_thread` FOREIGN KEY (`user_id`) |
|
71 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
72 |
INDEX `changed_index` (`changed`), |
|
73 |
PRIMARY KEY (`user_id`, `mailbox`) |
|
74 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
|
75 |
|
|
76 |
|
|
77 |
-- Table structure for table `cache_messages` |
|
78 |
|
|
79 |
CREATE TABLE `cache_messages` ( |
48be8f
|
80 |
`user_id` int(10) UNSIGNED NOT NULL, |
80152b
|
81 |
`mailbox` varchar(255) BINARY NOT NULL, |
A |
82 |
`uid` int(11) UNSIGNED NOT NULL DEFAULT '0', |
|
83 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
|
84 |
`data` longtext NOT NULL, |
609d39
|
85 |
`flags` int(11) NOT NULL DEFAULT '0', |
80152b
|
86 |
CONSTRAINT `user_id_fk_cache_messages` FOREIGN KEY (`user_id`) |
A |
87 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
88 |
INDEX `changed_index` (`changed`), |
|
89 |
PRIMARY KEY (`user_id`, `mailbox`, `uid`) |
|
90 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
|
91 |
|
|
92 |
|
aade7b
|
93 |
-- Table structure for table `contacts` |
T |
94 |
|
|
95 |
CREATE TABLE `contacts` ( |
|
96 |
`contact_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, |
37974e
|
97 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
aade7b
|
98 |
`del` tinyint(1) NOT NULL DEFAULT '0', |
951c07
|
99 |
`name` varchar(128) NOT NULL DEFAULT '', |
3d4a48
|
100 |
`email` text NOT NULL, |
951c07
|
101 |
`firstname` varchar(128) NOT NULL DEFAULT '', |
A |
102 |
`surname` varchar(128) NOT NULL DEFAULT '', |
09b0e3
|
103 |
`vcard` longtext NULL, |
3e2637
|
104 |
`words` text NULL, |
48be8f
|
105 |
`user_id` int(10) UNSIGNED NOT NULL, |
aade7b
|
106 |
PRIMARY KEY(`contact_id`), |
94fe9c
|
107 |
CONSTRAINT `user_id_fk_contacts` FOREIGN KEY (`user_id`) |
A |
108 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
48be8f
|
109 |
INDEX `user_contacts_index` (`user_id`,`del`) |
2bedfa
|
110 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
aade7b
|
111 |
|
a61bbb
|
112 |
-- Table structure for table `contactgroups` |
T |
113 |
|
|
114 |
CREATE TABLE `contactgroups` ( |
|
115 |
`contactgroup_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, |
48be8f
|
116 |
`user_id` int(10) UNSIGNED NOT NULL, |
192413
|
117 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
a61bbb
|
118 |
`del` tinyint(1) NOT NULL DEFAULT '0', |
T |
119 |
`name` varchar(128) NOT NULL DEFAULT '', |
|
120 |
PRIMARY KEY(`contactgroup_id`), |
|
121 |
CONSTRAINT `user_id_fk_contactgroups` FOREIGN KEY (`user_id`) |
|
122 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
123 |
INDEX `contactgroups_user_index` (`user_id`,`del`) |
|
124 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
|
125 |
|
|
126 |
CREATE TABLE `contactgroupmembers` ( |
|
127 |
`contactgroup_id` int(10) UNSIGNED NOT NULL, |
48be8f
|
128 |
`contact_id` int(10) UNSIGNED NOT NULL, |
192413
|
129 |
`created` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
a61bbb
|
130 |
PRIMARY KEY (`contactgroup_id`, `contact_id`), |
T |
131 |
CONSTRAINT `contactgroup_id_fk_contactgroups` FOREIGN KEY (`contactgroup_id`) |
|
132 |
REFERENCES `contactgroups`(`contactgroup_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
133 |
CONSTRAINT `contact_id_fk_contacts` FOREIGN KEY (`contact_id`) |
3a5476
|
134 |
REFERENCES `contacts`(`contact_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
A |
135 |
INDEX `contactgroupmembers_contact_index` (`contact_id`) |
a61bbb
|
136 |
) /*!40000 ENGINE=INNODB */; |
T |
137 |
|
aade7b
|
138 |
|
T |
139 |
-- Table structure for table `identities` |
|
140 |
|
|
141 |
CREATE TABLE `identities` ( |
|
142 |
`identity_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, |
48be8f
|
143 |
`user_id` int(10) UNSIGNED NOT NULL, |
a35062
|
144 |
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', |
aade7b
|
145 |
`del` tinyint(1) NOT NULL DEFAULT '0', |
T |
146 |
`standard` tinyint(1) NOT NULL DEFAULT '0', |
|
147 |
`name` varchar(128) NOT NULL, |
d7f3d7
|
148 |
`organization` varchar(128) NOT NULL DEFAULT '', |
aade7b
|
149 |
`email` varchar(128) NOT NULL, |
d7f3d7
|
150 |
`reply-to` varchar(128) NOT NULL DEFAULT '', |
A |
151 |
`bcc` varchar(128) NOT NULL DEFAULT '', |
f18911
|
152 |
`signature` text, |
a0109c
|
153 |
`html_signature` tinyint(1) NOT NULL DEFAULT '0', |
94fe9c
|
154 |
PRIMARY KEY(`identity_id`), |
A |
155 |
CONSTRAINT `user_id_fk_identities` FOREIGN KEY (`user_id`) |
|
156 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
565c47
|
157 |
INDEX `user_identities_index` (`user_id`, `del`), |
AM |
158 |
INDEX `email_identities_index` (`email`, `del`) |
2bedfa
|
159 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
8248e4
|
160 |
|
aade7b
|
161 |
|
66df08
|
162 |
-- Table structure for table `dictionary` |
A |
163 |
|
|
164 |
CREATE TABLE `dictionary` ( |
|
165 |
`user_id` int(10) UNSIGNED DEFAULT NULL, |
|
166 |
`language` varchar(5) NOT NULL, |
|
167 |
`data` longtext NOT NULL, |
|
168 |
CONSTRAINT `user_id_fk_dictionary` FOREIGN KEY (`user_id`) |
|
169 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
170 |
UNIQUE `uniqueness` (`user_id`, `language`) |
|
171 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
|
172 |
|
f8e48d
|
173 |
|
A |
174 |
-- Table structure for table `searches` |
|
175 |
|
|
176 |
CREATE TABLE `searches` ( |
|
177 |
`search_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, |
48be8f
|
178 |
`user_id` int(10) UNSIGNED NOT NULL, |
f8e48d
|
179 |
`type` int(3) NOT NULL DEFAULT '0', |
A |
180 |
`name` varchar(128) NOT NULL, |
|
181 |
`data` text, |
|
182 |
PRIMARY KEY(`search_id`), |
|
183 |
CONSTRAINT `user_id_fk_searches` FOREIGN KEY (`user_id`) |
|
184 |
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
185 |
UNIQUE `uniqueness` (`user_id`, `type`, `name`) |
|
186 |
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; |
|
187 |
|
|
188 |
|
2bedfa
|
189 |
/*!40014 SET FOREIGN_KEY_CHECKS=1 */; |