]> git.mxchange.org Git - friendica.git/blob - database.sql
Conversation data is now stored in another table
[friendica.git] / database.sql
1 -- ------------------------------------------
2 -- Friendica 3.5.2-dev (Asparagus)
3 -- DB_UPDATE_VERSION 1220
4 -- ------------------------------------------
5
6
7 --
8 -- TABLE addon
9 --
10 CREATE TABLE IF NOT EXISTS `addon` (
11         `id` int(11) NOT NULL auto_increment,
12         `name` varchar(190) NOT NULL DEFAULT '',
13         `version` varchar(255) NOT NULL DEFAULT '',
14         `installed` tinyint(1) NOT NULL DEFAULT 0,
15         `hidden` tinyint(1) NOT NULL DEFAULT 0,
16         `timestamp` bigint(20) NOT NULL DEFAULT 0,
17         `plugin_admin` tinyint(1) NOT NULL DEFAULT 0,
18          PRIMARY KEY(`id`),
19          UNIQUE INDEX `name` (`name`)
20 ) DEFAULT COLLATE utf8mb4_general_ci;
21
22 --
23 -- TABLE attach
24 --
25 CREATE TABLE IF NOT EXISTS `attach` (
26         `id` int(11) NOT NULL auto_increment,
27         `uid` int(11) NOT NULL DEFAULT 0,
28         `hash` varchar(64) NOT NULL DEFAULT '',
29         `filename` varchar(255) NOT NULL DEFAULT '',
30         `filetype` varchar(64) NOT NULL DEFAULT '',
31         `filesize` int(11) NOT NULL DEFAULT 0,
32         `data` longblob NOT NULL,
33         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
34         `edited` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
35         `allow_cid` mediumtext,
36         `allow_gid` mediumtext,
37         `deny_cid` mediumtext,
38         `deny_gid` mediumtext,
39          PRIMARY KEY(`id`)
40 ) DEFAULT COLLATE utf8mb4_general_ci;
41
42 --
43 -- TABLE auth_codes
44 --
45 CREATE TABLE IF NOT EXISTS `auth_codes` (
46         `id` varchar(40) NOT NULL,
47         `client_id` varchar(20) NOT NULL DEFAULT '',
48         `redirect_uri` varchar(200) NOT NULL DEFAULT '',
49         `expires` int(11) NOT NULL DEFAULT 0,
50         `scope` varchar(250) NOT NULL DEFAULT '',
51          PRIMARY KEY(`id`)
52 ) DEFAULT COLLATE utf8mb4_general_ci;
53
54 --
55 -- TABLE cache
56 --
57 CREATE TABLE IF NOT EXISTS `cache` (
58         `k` varbinary(255) NOT NULL,
59         `v` mediumtext,
60         `expire_mode` int(11) NOT NULL DEFAULT 0,
61         `updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
62          PRIMARY KEY(`k`),
63          INDEX `expire_mode_updated` (`expire_mode`,`updated`)
64 ) DEFAULT COLLATE utf8mb4_general_ci;
65
66 --
67 -- TABLE challenge
68 --
69 CREATE TABLE IF NOT EXISTS `challenge` (
70         `id` int(10) unsigned NOT NULL auto_increment,
71         `challenge` varchar(255) NOT NULL DEFAULT '',
72         `dfrn-id` varchar(255) NOT NULL DEFAULT '',
73         `expire` int(11) NOT NULL DEFAULT 0,
74         `type` varchar(255) NOT NULL DEFAULT '',
75         `last_update` varchar(255) NOT NULL DEFAULT '',
76          PRIMARY KEY(`id`)
77 ) DEFAULT COLLATE utf8mb4_general_ci;
78
79 --
80 -- TABLE clients
81 --
82 CREATE TABLE IF NOT EXISTS `clients` (
83         `client_id` varchar(20) NOT NULL,
84         `pw` varchar(20) NOT NULL DEFAULT '',
85         `redirect_uri` varchar(200) NOT NULL DEFAULT '',
86         `name` text,
87         `icon` text,
88         `uid` int(11) NOT NULL DEFAULT 0,
89          PRIMARY KEY(`client_id`)
90 ) DEFAULT COLLATE utf8mb4_general_ci;
91
92 --
93 -- TABLE config
94 --
95 CREATE TABLE IF NOT EXISTS `config` (
96         `id` int(10) unsigned NOT NULL auto_increment,
97         `cat` varbinary(255) NOT NULL DEFAULT '',
98         `k` varbinary(255) NOT NULL DEFAULT '',
99         `v` mediumtext,
100          PRIMARY KEY(`id`),
101          UNIQUE INDEX `cat_k` (`cat`,`k`)
102 ) DEFAULT COLLATE utf8mb4_general_ci;
103
104 --
105 -- TABLE contact
106 --
107 CREATE TABLE IF NOT EXISTS `contact` (
108         `id` int(11) NOT NULL auto_increment,
109         `uid` int(11) NOT NULL DEFAULT 0,
110         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
111         `self` tinyint(1) NOT NULL DEFAULT 0,
112         `remote_self` tinyint(1) NOT NULL DEFAULT 0,
113         `rel` tinyint(1) NOT NULL DEFAULT 0,
114         `duplex` tinyint(1) NOT NULL DEFAULT 0,
115         `network` varchar(255) NOT NULL DEFAULT '',
116         `name` varchar(255) NOT NULL DEFAULT '',
117         `nick` varchar(255) NOT NULL DEFAULT '',
118         `location` varchar(255) NOT NULL DEFAULT '',
119         `about` text,
120         `keywords` text,
121         `gender` varchar(32) NOT NULL DEFAULT '',
122         `xmpp` varchar(255) NOT NULL DEFAULT '',
123         `attag` varchar(255) NOT NULL DEFAULT '',
124         `avatar` varchar(255) NOT NULL DEFAULT '',
125         `photo` text,
126         `thumb` text,
127         `micro` text,
128         `site-pubkey` text,
129         `issued-id` varchar(255) NOT NULL DEFAULT '',
130         `dfrn-id` varchar(255) NOT NULL DEFAULT '',
131         `url` varchar(255) NOT NULL DEFAULT '',
132         `nurl` varchar(255) NOT NULL DEFAULT '',
133         `addr` varchar(255) NOT NULL DEFAULT '',
134         `alias` varchar(255) NOT NULL DEFAULT '',
135         `pubkey` text,
136         `prvkey` text,
137         `batch` varchar(255) NOT NULL DEFAULT '',
138         `request` text,
139         `notify` text,
140         `poll` text,
141         `confirm` text,
142         `poco` text,
143         `aes_allow` tinyint(1) NOT NULL DEFAULT 0,
144         `ret-aes` tinyint(1) NOT NULL DEFAULT 0,
145         `usehub` tinyint(1) NOT NULL DEFAULT 0,
146         `subhub` tinyint(1) NOT NULL DEFAULT 0,
147         `hub-verify` varchar(255) NOT NULL DEFAULT '',
148         `last-update` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
149         `success_update` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
150         `failure_update` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
151         `name-date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
152         `uri-date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
153         `avatar-date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
154         `term-date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
155         `last-item` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
156         `priority` tinyint(3) NOT NULL DEFAULT 0,
157         `blocked` tinyint(1) NOT NULL DEFAULT 1,
158         `readonly` tinyint(1) NOT NULL DEFAULT 0,
159         `writable` tinyint(1) NOT NULL DEFAULT 0,
160         `forum` tinyint(1) NOT NULL DEFAULT 0,
161         `prv` tinyint(1) NOT NULL DEFAULT 0,
162         `contact-type` int(11) NOT NULL DEFAULT 0,
163         `hidden` tinyint(1) NOT NULL DEFAULT 0,
164         `archive` tinyint(1) NOT NULL DEFAULT 0,
165         `pending` tinyint(1) NOT NULL DEFAULT 1,
166         `rating` tinyint(1) NOT NULL DEFAULT 0,
167         `reason` text,
168         `closeness` tinyint(2) NOT NULL DEFAULT 99,
169         `info` mediumtext,
170         `profile-id` int(11) NOT NULL DEFAULT 0,
171         `bdyear` varchar(4) NOT NULL DEFAULT '',
172         `bd` date NOT NULL DEFAULT '0001-01-01',
173         `notify_new_posts` tinyint(1) NOT NULL DEFAULT 0,
174         `fetch_further_information` tinyint(1) NOT NULL DEFAULT 0,
175         `ffi_keyword_blacklist` text,
176          PRIMARY KEY(`id`),
177          INDEX `uid_name` (`uid`,`name`(190)),
178          INDEX `self_uid` (`self`,`uid`),
179          INDEX `alias_uid` (`alias`(32),`uid`),
180          INDEX `pending_uid` (`pending`,`uid`),
181          INDEX `blocked_uid` (`blocked`,`uid`),
182          INDEX `uid_rel_network_poll` (`uid`,`rel`,`network`(4),`poll`(64),`archive`),
183          INDEX `uid_network_batch` (`uid`,`network`(4),`batch`(64)),
184          INDEX `addr_uid` (`addr`(32),`uid`),
185          INDEX `nurl_uid` (`nurl`(32),`uid`),
186          INDEX `nick_uid` (`nick`(32),`uid`),
187          INDEX `dfrn-id` (`dfrn-id`),
188          INDEX `issued-id` (`issued-id`)
189 ) DEFAULT COLLATE utf8mb4_general_ci;
190
191 --
192 -- TABLE conv
193 --
194 CREATE TABLE IF NOT EXISTS `conv` (
195         `id` int(10) unsigned NOT NULL auto_increment,
196         `guid` varchar(64) NOT NULL DEFAULT '',
197         `recips` text,
198         `uid` int(11) NOT NULL DEFAULT 0,
199         `creator` varchar(255) NOT NULL DEFAULT '',
200         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
201         `updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
202         `subject` text,
203          PRIMARY KEY(`id`),
204          INDEX `uid` (`uid`)
205 ) DEFAULT COLLATE utf8mb4_general_ci;
206
207 --
208 -- TABLE conversation
209 --
210 CREATE TABLE IF NOT EXISTS `conversation` (
211         `item-uri` varbinary(255) NOT NULL,
212         `reply-to-uri` varbinary(255) NOT NULL DEFAULT '',
213         `conversation-uri` varbinary(255) NOT NULL DEFAULT '',
214         `protocol` tinyint(1) unsigned NOT NULL DEFAULT 0,
215         `source` mediumtext,
216          PRIMARY KEY(`item-uri`),
217          INDEX `conversation-uri` (`conversation-uri`)
218 ) DEFAULT COLLATE utf8mb4_general_ci;
219
220 --
221 -- TABLE event
222 --
223 CREATE TABLE IF NOT EXISTS `event` (
224         `id` int(11) NOT NULL auto_increment,
225         `guid` varchar(255) NOT NULL DEFAULT '',
226         `uid` int(11) NOT NULL DEFAULT 0,
227         `cid` int(11) NOT NULL DEFAULT 0,
228         `uri` varchar(255) NOT NULL DEFAULT '',
229         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
230         `edited` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
231         `start` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
232         `finish` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
233         `summary` text,
234         `desc` text,
235         `location` text,
236         `type` varchar(255) NOT NULL DEFAULT '',
237         `nofinish` tinyint(1) NOT NULL DEFAULT 0,
238         `adjust` tinyint(1) NOT NULL DEFAULT 1,
239         `ignore` tinyint(1) unsigned NOT NULL DEFAULT 0,
240         `allow_cid` mediumtext,
241         `allow_gid` mediumtext,
242         `deny_cid` mediumtext,
243         `deny_gid` mediumtext,
244          PRIMARY KEY(`id`),
245          INDEX `uid_start` (`uid`,`start`)
246 ) DEFAULT COLLATE utf8mb4_general_ci;
247
248 --
249 -- TABLE fcontact
250 --
251 CREATE TABLE IF NOT EXISTS `fcontact` (
252         `id` int(10) unsigned NOT NULL auto_increment,
253         `guid` varchar(255) NOT NULL DEFAULT '',
254         `url` varchar(255) NOT NULL DEFAULT '',
255         `name` varchar(255) NOT NULL DEFAULT '',
256         `photo` varchar(255) NOT NULL DEFAULT '',
257         `request` varchar(255) NOT NULL DEFAULT '',
258         `nick` varchar(255) NOT NULL DEFAULT '',
259         `addr` varchar(255) NOT NULL DEFAULT '',
260         `batch` varchar(255) NOT NULL DEFAULT '',
261         `notify` varchar(255) NOT NULL DEFAULT '',
262         `poll` varchar(255) NOT NULL DEFAULT '',
263         `confirm` varchar(255) NOT NULL DEFAULT '',
264         `priority` tinyint(1) NOT NULL DEFAULT 0,
265         `network` varchar(32) NOT NULL DEFAULT '',
266         `alias` varchar(255) NOT NULL DEFAULT '',
267         `pubkey` text,
268         `updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
269          PRIMARY KEY(`id`),
270          INDEX `addr` (`addr`(32)),
271          INDEX `url` (`url`)
272 ) DEFAULT COLLATE utf8mb4_general_ci;
273
274 --
275 -- TABLE ffinder
276 --
277 CREATE TABLE IF NOT EXISTS `ffinder` (
278         `id` int(10) unsigned NOT NULL auto_increment,
279         `uid` int(10) unsigned NOT NULL DEFAULT 0,
280         `cid` int(10) unsigned NOT NULL DEFAULT 0,
281         `fid` int(10) unsigned NOT NULL DEFAULT 0,
282          PRIMARY KEY(`id`)
283 ) DEFAULT COLLATE utf8mb4_general_ci;
284
285 --
286 -- TABLE fserver
287 --
288 CREATE TABLE IF NOT EXISTS `fserver` (
289         `id` int(11) NOT NULL auto_increment,
290         `server` varchar(255) NOT NULL DEFAULT '',
291         `posturl` varchar(255) NOT NULL DEFAULT '',
292         `key` text,
293          PRIMARY KEY(`id`),
294          INDEX `server` (`server`(32))
295 ) DEFAULT COLLATE utf8mb4_general_ci;
296
297 --
298 -- TABLE fsuggest
299 --
300 CREATE TABLE IF NOT EXISTS `fsuggest` (
301         `id` int(11) NOT NULL auto_increment,
302         `uid` int(11) NOT NULL DEFAULT 0,
303         `cid` int(11) NOT NULL DEFAULT 0,
304         `name` varchar(255) NOT NULL DEFAULT '',
305         `url` varchar(255) NOT NULL DEFAULT '',
306         `request` varchar(255) NOT NULL DEFAULT '',
307         `photo` varchar(255) NOT NULL DEFAULT '',
308         `note` text,
309         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
310          PRIMARY KEY(`id`)
311 ) DEFAULT COLLATE utf8mb4_general_ci;
312
313 --
314 -- TABLE gcign
315 --
316 CREATE TABLE IF NOT EXISTS `gcign` (
317         `id` int(11) NOT NULL auto_increment,
318         `uid` int(11) NOT NULL DEFAULT 0,
319         `gcid` int(11) NOT NULL DEFAULT 0,
320          PRIMARY KEY(`id`),
321          INDEX `uid` (`uid`),
322          INDEX `gcid` (`gcid`)
323 ) DEFAULT COLLATE utf8mb4_general_ci;
324
325 --
326 -- TABLE gcontact
327 --
328 CREATE TABLE IF NOT EXISTS `gcontact` (
329         `id` int(10) unsigned NOT NULL auto_increment,
330         `name` varchar(255) NOT NULL DEFAULT '',
331         `nick` varchar(255) NOT NULL DEFAULT '',
332         `url` varchar(255) NOT NULL DEFAULT '',
333         `nurl` varchar(255) NOT NULL DEFAULT '',
334         `photo` varchar(255) NOT NULL DEFAULT '',
335         `connect` varchar(255) NOT NULL DEFAULT '',
336         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
337         `updated` datetime DEFAULT '0001-01-01 00:00:00',
338         `last_contact` datetime DEFAULT '0001-01-01 00:00:00',
339         `last_failure` datetime DEFAULT '0001-01-01 00:00:00',
340         `location` varchar(255) NOT NULL DEFAULT '',
341         `about` text,
342         `keywords` text,
343         `gender` varchar(32) NOT NULL DEFAULT '',
344         `birthday` varchar(32) NOT NULL DEFAULT '0001-01-01',
345         `community` tinyint(1) NOT NULL DEFAULT 0,
346         `contact-type` tinyint(1) NOT NULL DEFAULT -1,
347         `hide` tinyint(1) NOT NULL DEFAULT 0,
348         `nsfw` tinyint(1) NOT NULL DEFAULT 0,
349         `network` varchar(255) NOT NULL DEFAULT '',
350         `addr` varchar(255) NOT NULL DEFAULT '',
351         `notify` text,
352         `alias` varchar(255) NOT NULL DEFAULT '',
353         `generation` tinyint(3) NOT NULL DEFAULT 0,
354         `server_url` varchar(255) NOT NULL DEFAULT '',
355          PRIMARY KEY(`id`),
356          INDEX `nurl` (`nurl`(64)),
357          INDEX `name` (`name`(64)),
358          INDEX `nick` (`nick`(32)),
359          INDEX `addr` (`addr`(64)),
360          INDEX `hide_network_updated` (`hide`,`network`(4),`updated`),
361          INDEX `updated` (`updated`)
362 ) DEFAULT COLLATE utf8mb4_general_ci;
363
364 --
365 -- TABLE glink
366 --
367 CREATE TABLE IF NOT EXISTS `glink` (
368         `id` int(10) unsigned NOT NULL auto_increment,
369         `cid` int(11) NOT NULL DEFAULT 0,
370         `uid` int(11) NOT NULL DEFAULT 0,
371         `gcid` int(11) NOT NULL DEFAULT 0,
372         `zcid` int(11) NOT NULL DEFAULT 0,
373         `updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
374          PRIMARY KEY(`id`),
375          UNIQUE INDEX `cid_uid_gcid_zcid` (`cid`,`uid`,`gcid`,`zcid`),
376          INDEX `gcid` (`gcid`)
377 ) DEFAULT COLLATE utf8mb4_general_ci;
378
379 --
380 -- TABLE group
381 --
382 CREATE TABLE IF NOT EXISTS `group` (
383         `id` int(10) unsigned NOT NULL auto_increment,
384         `uid` int(10) unsigned NOT NULL DEFAULT 0,
385         `visible` tinyint(1) NOT NULL DEFAULT 0,
386         `deleted` tinyint(1) NOT NULL DEFAULT 0,
387         `name` varchar(255) NOT NULL DEFAULT '',
388          PRIMARY KEY(`id`),
389          INDEX `uid` (`uid`)
390 ) DEFAULT COLLATE utf8mb4_general_ci;
391
392 --
393 -- TABLE group_member
394 --
395 CREATE TABLE IF NOT EXISTS `group_member` (
396         `id` int(10) unsigned NOT NULL auto_increment,
397         `uid` int(10) unsigned NOT NULL DEFAULT 0,
398         `gid` int(10) unsigned NOT NULL DEFAULT 0,
399         `contact-id` int(10) unsigned NOT NULL DEFAULT 0,
400          PRIMARY KEY(`id`),
401          INDEX `contactid` (`contact-id`),
402          INDEX `gid_contactid` (`gid`,`contact-id`),
403          UNIQUE INDEX `uid_gid_contactid` (`uid`,`gid`,`contact-id`)
404 ) DEFAULT COLLATE utf8mb4_general_ci;
405
406 --
407 -- TABLE gserver
408 --
409 CREATE TABLE IF NOT EXISTS `gserver` (
410         `id` int(10) unsigned NOT NULL auto_increment,
411         `url` varchar(255) NOT NULL DEFAULT '',
412         `nurl` varchar(255) NOT NULL DEFAULT '',
413         `version` varchar(255) NOT NULL DEFAULT '',
414         `site_name` varchar(255) NOT NULL DEFAULT '',
415         `info` text,
416         `register_policy` tinyint(1) NOT NULL DEFAULT 0,
417         `poco` varchar(255) NOT NULL DEFAULT '',
418         `noscrape` varchar(255) NOT NULL DEFAULT '',
419         `network` varchar(32) NOT NULL DEFAULT '',
420         `platform` varchar(255) NOT NULL DEFAULT '',
421         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
422         `last_poco_query` datetime DEFAULT '0001-01-01 00:00:00',
423         `last_contact` datetime DEFAULT '0001-01-01 00:00:00',
424         `last_failure` datetime DEFAULT '0001-01-01 00:00:00',
425          PRIMARY KEY(`id`),
426          INDEX `nurl` (`nurl`(32))
427 ) DEFAULT COLLATE utf8mb4_general_ci;
428
429 --
430 -- TABLE hook
431 --
432 CREATE TABLE IF NOT EXISTS `hook` (
433         `id` int(11) NOT NULL auto_increment,
434         `hook` varchar(255) NOT NULL DEFAULT '',
435         `file` varchar(255) NOT NULL DEFAULT '',
436         `function` varchar(255) NOT NULL DEFAULT '',
437         `priority` int(11) unsigned NOT NULL DEFAULT 0,
438          PRIMARY KEY(`id`),
439          UNIQUE INDEX `hook_file_function` (`hook`(50),`file`(80),`function`(60))
440 ) DEFAULT COLLATE utf8mb4_general_ci;
441
442 --
443 -- TABLE intro
444 --
445 CREATE TABLE IF NOT EXISTS `intro` (
446         `id` int(10) unsigned NOT NULL auto_increment,
447         `uid` int(10) unsigned NOT NULL DEFAULT 0,
448         `fid` int(11) NOT NULL DEFAULT 0,
449         `contact-id` int(11) NOT NULL DEFAULT 0,
450         `knowyou` tinyint(1) NOT NULL DEFAULT 0,
451         `duplex` tinyint(1) NOT NULL DEFAULT 0,
452         `note` text,
453         `hash` varchar(255) NOT NULL DEFAULT '',
454         `datetime` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
455         `blocked` tinyint(1) NOT NULL DEFAULT 1,
456         `ignore` tinyint(1) NOT NULL DEFAULT 0,
457          PRIMARY KEY(`id`)
458 ) DEFAULT COLLATE utf8mb4_general_ci;
459
460 --
461 -- TABLE item
462 --
463 CREATE TABLE IF NOT EXISTS `item` (
464         `id` int(10) unsigned NOT NULL auto_increment,
465         `guid` varchar(255) NOT NULL DEFAULT '',
466         `uri` varchar(255) NOT NULL DEFAULT '',
467         `uid` int(10) unsigned NOT NULL DEFAULT 0,
468         `contact-id` int(11) NOT NULL DEFAULT 0,
469         `gcontact-id` int(11) unsigned NOT NULL DEFAULT 0,
470         `type` varchar(255) NOT NULL DEFAULT '',
471         `wall` tinyint(1) NOT NULL DEFAULT 0,
472         `gravity` tinyint(1) NOT NULL DEFAULT 0,
473         `parent` int(10) unsigned NOT NULL DEFAULT 0,
474         `parent-uri` varchar(255) NOT NULL DEFAULT '',
475         `extid` varchar(255) NOT NULL DEFAULT '',
476         `thr-parent` varchar(255) NOT NULL DEFAULT '',
477         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
478         `edited` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
479         `commented` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
480         `received` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
481         `changed` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
482         `owner-id` int(11) NOT NULL DEFAULT 0,
483         `owner-name` varchar(255) NOT NULL DEFAULT '',
484         `owner-link` varchar(255) NOT NULL DEFAULT '',
485         `owner-avatar` varchar(255) NOT NULL DEFAULT '',
486         `author-id` int(11) NOT NULL DEFAULT 0,
487         `author-name` varchar(255) NOT NULL DEFAULT '',
488         `author-link` varchar(255) NOT NULL DEFAULT '',
489         `author-avatar` varchar(255) NOT NULL DEFAULT '',
490         `title` varchar(255) NOT NULL DEFAULT '',
491         `body` mediumtext,
492         `app` varchar(255) NOT NULL DEFAULT '',
493         `verb` varchar(255) NOT NULL DEFAULT '',
494         `object-type` varchar(255) NOT NULL DEFAULT '',
495         `object` text,
496         `target-type` varchar(255) NOT NULL DEFAULT '',
497         `target` text,
498         `postopts` text,
499         `plink` varchar(255) NOT NULL DEFAULT '',
500         `resource-id` varchar(255) NOT NULL DEFAULT '',
501         `event-id` int(11) NOT NULL DEFAULT 0,
502         `tag` mediumtext,
503         `attach` mediumtext,
504         `inform` mediumtext,
505         `file` mediumtext,
506         `location` varchar(255) NOT NULL DEFAULT '',
507         `coord` varchar(255) NOT NULL DEFAULT '',
508         `allow_cid` mediumtext,
509         `allow_gid` mediumtext,
510         `deny_cid` mediumtext,
511         `deny_gid` mediumtext,
512         `private` tinyint(1) NOT NULL DEFAULT 0,
513         `pubmail` tinyint(1) NOT NULL DEFAULT 0,
514         `moderated` tinyint(1) NOT NULL DEFAULT 0,
515         `visible` tinyint(1) NOT NULL DEFAULT 0,
516         `spam` tinyint(1) NOT NULL DEFAULT 0,
517         `starred` tinyint(1) NOT NULL DEFAULT 0,
518         `bookmark` tinyint(1) NOT NULL DEFAULT 0,
519         `unseen` tinyint(1) NOT NULL DEFAULT 1,
520         `deleted` tinyint(1) NOT NULL DEFAULT 0,
521         `origin` tinyint(1) NOT NULL DEFAULT 0,
522         `forum_mode` tinyint(1) NOT NULL DEFAULT 0,
523         `last-child` tinyint(1) unsigned NOT NULL DEFAULT 1,
524         `mention` tinyint(1) NOT NULL DEFAULT 0,
525         `network` varchar(32) NOT NULL DEFAULT '',
526         `rendered-hash` varchar(32) NOT NULL DEFAULT '',
527         `rendered-html` mediumtext,
528         `global` tinyint(1) NOT NULL DEFAULT 0,
529          PRIMARY KEY(`id`),
530          INDEX `guid` (`guid`),
531          INDEX `uri` (`uri`),
532          INDEX `parent` (`parent`),
533          INDEX `parent-uri` (`parent-uri`),
534          INDEX `extid` (`extid`),
535          INDEX `uid_id` (`uid`,`id`),
536          INDEX `uid_contactid_id` (`uid`,`contact-id`,`id`),
537          INDEX `uid_created` (`uid`,`created`),
538          INDEX `uid_unseen_contactid` (`uid`,`unseen`,`contact-id`),
539          INDEX `uid_network_received` (`uid`,`network`(4),`received`),
540          INDEX `uid_network_commented` (`uid`,`network`(4),`commented`),
541          INDEX `uid_thrparent` (`uid`,`thr-parent`(190)),
542          INDEX `uid_parenturi` (`uid`,`parent-uri`(190)),
543          INDEX `uid_contactid_created` (`uid`,`contact-id`,`created`),
544          INDEX `authorid_created` (`author-id`,`created`),
545          INDEX `uid_uri` (`uid`,`uri`(190)),
546          INDEX `resource-id` (`resource-id`),
547          INDEX `contactid_allowcid_allowpid_denycid_denygid` (`contact-id`,`allow_cid`(10),`allow_gid`(10),`deny_cid`(10),`deny_gid`(10)),
548          INDEX `uid_type_changed` (`uid`,`type`(190),`changed`),
549          INDEX `contactid_verb` (`contact-id`,`verb`(190)),
550          INDEX `deleted_changed` (`deleted`,`changed`),
551          INDEX `uid_wall_changed` (`uid`,`wall`,`changed`),
552          INDEX `uid_eventid` (`uid`,`event-id`),
553          INDEX `uid_authorlink` (`uid`,`author-link`(190)),
554          INDEX `uid_ownerlink` (`uid`,`owner-link`(190))
555 ) DEFAULT COLLATE utf8mb4_general_ci;
556
557 --
558 -- TABLE item_id
559 --
560 CREATE TABLE IF NOT EXISTS `item_id` (
561         `id` int(11) NOT NULL auto_increment,
562         `iid` int(11) NOT NULL DEFAULT 0,
563         `uid` int(11) NOT NULL DEFAULT 0,
564         `sid` varchar(255) NOT NULL DEFAULT '',
565         `service` varchar(255) NOT NULL DEFAULT '',
566          PRIMARY KEY(`id`),
567          INDEX `uid` (`uid`),
568          INDEX `sid` (`sid`),
569          INDEX `service` (`service`(32)),
570          INDEX `iid` (`iid`)
571 ) DEFAULT COLLATE utf8mb4_general_ci;
572
573 --
574 -- TABLE locks
575 --
576 CREATE TABLE IF NOT EXISTS `locks` (
577         `id` int(11) NOT NULL auto_increment,
578         `name` varchar(128) NOT NULL DEFAULT '',
579         `locked` tinyint(1) NOT NULL DEFAULT 0,
580         `created` datetime DEFAULT '0001-01-01 00:00:00',
581          PRIMARY KEY(`id`)
582 ) DEFAULT COLLATE utf8mb4_general_ci;
583
584 --
585 -- TABLE mail
586 --
587 CREATE TABLE IF NOT EXISTS `mail` (
588         `id` int(10) unsigned NOT NULL auto_increment,
589         `uid` int(10) unsigned NOT NULL DEFAULT 0,
590         `guid` varchar(64) NOT NULL DEFAULT '',
591         `from-name` varchar(255) NOT NULL DEFAULT '',
592         `from-photo` varchar(255) NOT NULL DEFAULT '',
593         `from-url` varchar(255) NOT NULL DEFAULT '',
594         `contact-id` varchar(255) NOT NULL DEFAULT '',
595         `convid` int(11) unsigned NOT NULL DEFAULT 0,
596         `title` varchar(255) NOT NULL DEFAULT '',
597         `body` mediumtext,
598         `seen` tinyint(1) NOT NULL DEFAULT 0,
599         `reply` tinyint(1) NOT NULL DEFAULT 0,
600         `replied` tinyint(1) NOT NULL DEFAULT 0,
601         `unknown` tinyint(1) NOT NULL DEFAULT 0,
602         `uri` varchar(255) NOT NULL DEFAULT '',
603         `parent-uri` varchar(255) NOT NULL DEFAULT '',
604         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
605          PRIMARY KEY(`id`),
606          INDEX `uid_seen` (`uid`,`seen`),
607          INDEX `convid` (`convid`),
608          INDEX `uri` (`uri`(64)),
609          INDEX `parent-uri` (`parent-uri`(64))
610 ) DEFAULT COLLATE utf8mb4_general_ci;
611
612 --
613 -- TABLE mailacct
614 --
615 CREATE TABLE IF NOT EXISTS `mailacct` (
616         `id` int(11) NOT NULL auto_increment,
617         `uid` int(11) NOT NULL DEFAULT 0,
618         `server` varchar(255) NOT NULL DEFAULT '',
619         `port` int(11) NOT NULL DEFAULT 0,
620         `ssltype` varchar(16) NOT NULL DEFAULT '',
621         `mailbox` varchar(255) NOT NULL DEFAULT '',
622         `user` varchar(255) NOT NULL DEFAULT '',
623         `pass` text,
624         `reply_to` varchar(255) NOT NULL DEFAULT '',
625         `action` int(11) NOT NULL DEFAULT 0,
626         `movetofolder` varchar(255) NOT NULL DEFAULT '',
627         `pubmail` tinyint(1) NOT NULL DEFAULT 0,
628         `last_check` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
629          PRIMARY KEY(`id`)
630 ) DEFAULT COLLATE utf8mb4_general_ci;
631
632 --
633 -- TABLE manage
634 --
635 CREATE TABLE IF NOT EXISTS `manage` (
636         `id` int(11) NOT NULL auto_increment,
637         `uid` int(11) NOT NULL DEFAULT 0,
638         `mid` int(11) NOT NULL DEFAULT 0,
639          PRIMARY KEY(`id`),
640          UNIQUE INDEX `uid_mid` (`uid`,`mid`)
641 ) DEFAULT COLLATE utf8mb4_general_ci;
642
643 --
644 -- TABLE notify
645 --
646 CREATE TABLE IF NOT EXISTS `notify` (
647         `id` int(11) NOT NULL auto_increment,
648         `hash` varchar(64) NOT NULL DEFAULT '',
649         `type` int(11) NOT NULL DEFAULT 0,
650         `name` varchar(255) NOT NULL DEFAULT '',
651         `url` varchar(255) NOT NULL DEFAULT '',
652         `photo` varchar(255) NOT NULL DEFAULT '',
653         `date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
654         `msg` mediumtext,
655         `uid` int(11) NOT NULL DEFAULT 0,
656         `link` varchar(255) NOT NULL DEFAULT '',
657         `iid` int(11) NOT NULL DEFAULT 0,
658         `parent` int(11) NOT NULL DEFAULT 0,
659         `seen` tinyint(1) NOT NULL DEFAULT 0,
660         `verb` varchar(255) NOT NULL DEFAULT '',
661         `otype` varchar(16) NOT NULL DEFAULT '',
662         `name_cache` tinytext,
663         `msg_cache` mediumtext,
664          PRIMARY KEY(`id`),
665          INDEX `hash_uid` (`hash`,`uid`),
666          INDEX `seen_uid_date` (`seen`,`uid`,`date`),
667          INDEX `uid_date` (`uid`,`date`),
668          INDEX `uid_type_link` (`uid`,`type`,`link`(190))
669 ) DEFAULT COLLATE utf8mb4_general_ci;
670
671 --
672 -- TABLE notify-threads
673 --
674 CREATE TABLE IF NOT EXISTS `notify-threads` (
675         `id` int(11) NOT NULL auto_increment,
676         `notify-id` int(11) NOT NULL DEFAULT 0,
677         `master-parent-item` int(10) unsigned NOT NULL DEFAULT 0,
678         `parent-item` int(10) unsigned NOT NULL DEFAULT 0,
679         `receiver-uid` int(11) NOT NULL DEFAULT 0,
680          PRIMARY KEY(`id`)
681 ) DEFAULT COLLATE utf8mb4_general_ci;
682
683 --
684 -- TABLE oembed
685 --
686 CREATE TABLE IF NOT EXISTS `oembed` (
687         `url` varbinary(255) NOT NULL,
688         `content` mediumtext,
689         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
690          PRIMARY KEY(`url`),
691          INDEX `created` (`created`)
692 ) DEFAULT COLLATE utf8mb4_general_ci;
693
694 --
695 -- TABLE parsed_url
696 --
697 CREATE TABLE IF NOT EXISTS `parsed_url` (
698         `url` varbinary(255) NOT NULL,
699         `guessing` tinyint(1) NOT NULL DEFAULT 0,
700         `oembed` tinyint(1) NOT NULL DEFAULT 0,
701         `content` mediumtext,
702         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
703          PRIMARY KEY(`url`,`guessing`,`oembed`),
704          INDEX `created` (`created`)
705 ) DEFAULT COLLATE utf8mb4_general_ci;
706
707 --
708 -- TABLE pconfig
709 --
710 CREATE TABLE IF NOT EXISTS `pconfig` (
711         `id` int(11) NOT NULL auto_increment,
712         `uid` int(11) NOT NULL DEFAULT 0,
713         `cat` varbinary(255) NOT NULL DEFAULT '',
714         `k` varbinary(255) NOT NULL DEFAULT '',
715         `v` mediumtext,
716          PRIMARY KEY(`id`),
717          UNIQUE INDEX `uid_cat_k` (`uid`,`cat`,`k`)
718 ) DEFAULT COLLATE utf8mb4_general_ci;
719
720 --
721 -- TABLE photo
722 --
723 CREATE TABLE IF NOT EXISTS `photo` (
724         `id` int(10) unsigned NOT NULL auto_increment,
725         `uid` int(10) unsigned NOT NULL DEFAULT 0,
726         `contact-id` int(10) unsigned NOT NULL DEFAULT 0,
727         `guid` varchar(64) NOT NULL DEFAULT '',
728         `resource-id` varchar(255) NOT NULL DEFAULT '',
729         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
730         `edited` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
731         `title` varchar(255) NOT NULL DEFAULT '',
732         `desc` text,
733         `album` varchar(255) NOT NULL DEFAULT '',
734         `filename` varchar(255) NOT NULL DEFAULT '',
735         `type` varchar(128) NOT NULL DEFAULT 'image/jpeg',
736         `height` smallint(6) NOT NULL DEFAULT 0,
737         `width` smallint(6) NOT NULL DEFAULT 0,
738         `datasize` int(10) unsigned NOT NULL DEFAULT 0,
739         `data` mediumblob NOT NULL,
740         `scale` tinyint(3) NOT NULL DEFAULT 0,
741         `profile` tinyint(1) NOT NULL DEFAULT 0,
742         `allow_cid` mediumtext,
743         `allow_gid` mediumtext,
744         `deny_cid` mediumtext,
745         `deny_gid` mediumtext,
746          PRIMARY KEY(`id`),
747          INDEX `uid_contactid` (`uid`,`contact-id`),
748          INDEX `uid_profile` (`uid`,`profile`),
749          INDEX `uid_album_scale_created` (`uid`,`album`(32),`scale`,`created`),
750          INDEX `uid_album_resource-id_created` (`uid`,`album`(32),`resource-id`(64),`created`),
751          INDEX `resource-id` (`resource-id`(64))
752 ) DEFAULT COLLATE utf8mb4_general_ci;
753
754 --
755 -- TABLE poll
756 --
757 CREATE TABLE IF NOT EXISTS `poll` (
758         `id` int(11) NOT NULL auto_increment,
759         `uid` int(11) NOT NULL DEFAULT 0,
760         `q0` text,
761         `q1` text,
762         `q2` text,
763         `q3` text,
764         `q4` text,
765         `q5` text,
766         `q6` text,
767         `q7` text,
768         `q8` text,
769         `q9` text,
770          PRIMARY KEY(`id`),
771          INDEX `uid` (`uid`)
772 ) DEFAULT COLLATE utf8mb4_general_ci;
773
774 --
775 -- TABLE poll_result
776 --
777 CREATE TABLE IF NOT EXISTS `poll_result` (
778         `id` int(11) NOT NULL auto_increment,
779         `poll_id` int(11) NOT NULL DEFAULT 0,
780         `choice` int(11) NOT NULL DEFAULT 0,
781          PRIMARY KEY(`id`),
782          INDEX `poll_id` (`poll_id`),
783          INDEX `choice` (`choice`)
784 ) DEFAULT COLLATE utf8mb4_general_ci;
785
786 --
787 -- TABLE process
788 --
789 CREATE TABLE IF NOT EXISTS `process` (
790         `pid` int(10) unsigned NOT NULL,
791         `command` varbinary(32) NOT NULL DEFAULT '',
792         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
793          PRIMARY KEY(`pid`),
794          INDEX `command` (`command`)
795 ) DEFAULT COLLATE utf8mb4_general_ci;
796
797 --
798 -- TABLE profile
799 --
800 CREATE TABLE IF NOT EXISTS `profile` (
801         `id` int(11) NOT NULL auto_increment,
802         `uid` int(11) NOT NULL DEFAULT 0,
803         `profile-name` varchar(255) NOT NULL DEFAULT '',
804         `is-default` tinyint(1) NOT NULL DEFAULT 0,
805         `hide-friends` tinyint(1) NOT NULL DEFAULT 0,
806         `name` varchar(255) NOT NULL DEFAULT '',
807         `pdesc` varchar(255) NOT NULL DEFAULT '',
808         `dob` varchar(32) NOT NULL DEFAULT '0001-01-01',
809         `address` varchar(255) NOT NULL DEFAULT '',
810         `locality` varchar(255) NOT NULL DEFAULT '',
811         `region` varchar(255) NOT NULL DEFAULT '',
812         `postal-code` varchar(32) NOT NULL DEFAULT '',
813         `country-name` varchar(255) NOT NULL DEFAULT '',
814         `hometown` varchar(255) NOT NULL DEFAULT '',
815         `gender` varchar(32) NOT NULL DEFAULT '',
816         `marital` varchar(255) NOT NULL DEFAULT '',
817         `with` text,
818         `howlong` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
819         `sexual` varchar(255) NOT NULL DEFAULT '',
820         `politic` varchar(255) NOT NULL DEFAULT '',
821         `religion` varchar(255) NOT NULL DEFAULT '',
822         `pub_keywords` text,
823         `prv_keywords` text,
824         `likes` text,
825         `dislikes` text,
826         `about` text,
827         `summary` varchar(255) NOT NULL DEFAULT '',
828         `music` text,
829         `book` text,
830         `tv` text,
831         `film` text,
832         `interest` text,
833         `romance` text,
834         `work` text,
835         `education` text,
836         `contact` text,
837         `homepage` varchar(255) NOT NULL DEFAULT '',
838         `xmpp` varchar(255) NOT NULL DEFAULT '',
839         `photo` varchar(255) NOT NULL DEFAULT '',
840         `thumb` varchar(255) NOT NULL DEFAULT '',
841         `publish` tinyint(1) NOT NULL DEFAULT 0,
842         `net-publish` tinyint(1) NOT NULL DEFAULT 0,
843          PRIMARY KEY(`id`),
844          INDEX `uid_is-default` (`uid`,`is-default`)
845 ) DEFAULT COLLATE utf8mb4_general_ci;
846
847 --
848 -- TABLE profile_check
849 --
850 CREATE TABLE IF NOT EXISTS `profile_check` (
851         `id` int(10) unsigned NOT NULL auto_increment,
852         `uid` int(10) unsigned NOT NULL DEFAULT 0,
853         `cid` int(10) unsigned NOT NULL DEFAULT 0,
854         `dfrn_id` varchar(255) NOT NULL DEFAULT '',
855         `sec` varchar(255) NOT NULL DEFAULT '',
856         `expire` int(11) NOT NULL DEFAULT 0,
857          PRIMARY KEY(`id`)
858 ) DEFAULT COLLATE utf8mb4_general_ci;
859
860 --
861 -- TABLE push_subscriber
862 --
863 CREATE TABLE IF NOT EXISTS `push_subscriber` (
864         `id` int(11) NOT NULL auto_increment,
865         `uid` int(11) NOT NULL DEFAULT 0,
866         `callback_url` varchar(255) NOT NULL DEFAULT '',
867         `topic` varchar(255) NOT NULL DEFAULT '',
868         `nickname` varchar(255) NOT NULL DEFAULT '',
869         `push` int(11) NOT NULL DEFAULT 0,
870         `last_update` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
871         `secret` varchar(255) NOT NULL DEFAULT '',
872          PRIMARY KEY(`id`)
873 ) DEFAULT COLLATE utf8mb4_general_ci;
874
875 --
876 -- TABLE queue
877 --
878 CREATE TABLE IF NOT EXISTS `queue` (
879         `id` int(11) NOT NULL auto_increment,
880         `cid` int(11) NOT NULL DEFAULT 0,
881         `network` varchar(32) NOT NULL DEFAULT '',
882         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
883         `last` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
884         `content` mediumtext,
885         `batch` tinyint(1) NOT NULL DEFAULT 0,
886          PRIMARY KEY(`id`),
887          INDEX `cid` (`cid`),
888          INDEX `created` (`created`),
889          INDEX `last` (`last`),
890          INDEX `network` (`network`),
891          INDEX `batch` (`batch`)
892 ) DEFAULT COLLATE utf8mb4_general_ci;
893
894 --
895 -- TABLE register
896 --
897 CREATE TABLE IF NOT EXISTS `register` (
898         `id` int(11) unsigned NOT NULL auto_increment,
899         `hash` varchar(255) NOT NULL DEFAULT '',
900         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
901         `uid` int(11) unsigned NOT NULL DEFAULT 0,
902         `password` varchar(255) NOT NULL DEFAULT '',
903         `language` varchar(16) NOT NULL DEFAULT '',
904         `note` text,
905          PRIMARY KEY(`id`)
906 ) DEFAULT COLLATE utf8mb4_general_ci;
907
908 --
909 -- TABLE search
910 --
911 CREATE TABLE IF NOT EXISTS `search` (
912         `id` int(11) NOT NULL auto_increment,
913         `uid` int(11) NOT NULL DEFAULT 0,
914         `term` varchar(255) NOT NULL DEFAULT '',
915          PRIMARY KEY(`id`),
916          INDEX `uid` (`uid`)
917 ) DEFAULT COLLATE utf8mb4_general_ci;
918
919 --
920 -- TABLE session
921 --
922 CREATE TABLE IF NOT EXISTS `session` (
923         `id` bigint(20) unsigned NOT NULL auto_increment,
924         `sid` varbinary(255) NOT NULL DEFAULT '',
925         `data` text,
926         `expire` int(10) unsigned NOT NULL DEFAULT 0,
927          PRIMARY KEY(`id`),
928          INDEX `sid` (`sid`(64)),
929          INDEX `expire` (`expire`)
930 ) DEFAULT COLLATE utf8mb4_general_ci;
931
932 --
933 -- TABLE sign
934 --
935 CREATE TABLE IF NOT EXISTS `sign` (
936         `id` int(10) unsigned NOT NULL auto_increment,
937         `iid` int(10) unsigned NOT NULL DEFAULT 0,
938         `signed_text` mediumtext,
939         `signature` text,
940         `signer` varchar(255) NOT NULL DEFAULT '',
941          PRIMARY KEY(`id`),
942          INDEX `iid` (`iid`)
943 ) DEFAULT COLLATE utf8mb4_general_ci;
944
945 --
946 -- TABLE spam
947 --
948 CREATE TABLE IF NOT EXISTS `spam` (
949         `id` int(11) NOT NULL auto_increment,
950         `uid` int(11) NOT NULL DEFAULT 0,
951         `spam` int(11) NOT NULL DEFAULT 0,
952         `ham` int(11) NOT NULL DEFAULT 0,
953         `term` varchar(255) NOT NULL DEFAULT '',
954         `date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
955          PRIMARY KEY(`id`),
956          INDEX `uid` (`uid`),
957          INDEX `spam` (`spam`),
958          INDEX `ham` (`ham`),
959          INDEX `term` (`term`)
960 ) DEFAULT COLLATE utf8mb4_general_ci;
961
962 --
963 -- TABLE term
964 --
965 CREATE TABLE IF NOT EXISTS `term` (
966         `tid` int(10) unsigned NOT NULL auto_increment,
967         `oid` int(10) unsigned NOT NULL DEFAULT 0,
968         `otype` tinyint(3) unsigned NOT NULL DEFAULT 0,
969         `type` tinyint(3) unsigned NOT NULL DEFAULT 0,
970         `term` varchar(255) NOT NULL DEFAULT '',
971         `url` varchar(255) NOT NULL DEFAULT '',
972         `guid` varchar(255) NOT NULL DEFAULT '',
973         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
974         `received` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
975         `global` tinyint(1) NOT NULL DEFAULT 0,
976         `aid` int(10) unsigned NOT NULL DEFAULT 0,
977         `uid` int(10) unsigned NOT NULL DEFAULT 0,
978          PRIMARY KEY(`tid`),
979          INDEX `oid_otype_type_term` (`oid`,`otype`,`type`,`term`(32)),
980          INDEX `uid_otype_type_term_global_created` (`uid`,`otype`,`type`,`term`(32),`global`,`created`),
981          INDEX `uid_otype_type_url` (`uid`,`otype`,`type`,`url`(64)),
982          INDEX `guid` (`guid`(64))
983 ) DEFAULT COLLATE utf8mb4_general_ci;
984
985 --
986 -- TABLE thread
987 --
988 CREATE TABLE IF NOT EXISTS `thread` (
989         `iid` int(10) unsigned NOT NULL DEFAULT 0,
990         `uid` int(10) unsigned NOT NULL DEFAULT 0,
991         `contact-id` int(11) unsigned NOT NULL DEFAULT 0,
992         `gcontact-id` int(11) unsigned NOT NULL DEFAULT 0,
993         `owner-id` int(11) unsigned NOT NULL DEFAULT 0,
994         `author-id` int(11) unsigned NOT NULL DEFAULT 0,
995         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
996         `edited` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
997         `commented` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
998         `received` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
999         `changed` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1000         `wall` tinyint(1) NOT NULL DEFAULT 0,
1001         `private` tinyint(1) NOT NULL DEFAULT 0,
1002         `pubmail` tinyint(1) NOT NULL DEFAULT 0,
1003         `moderated` tinyint(1) NOT NULL DEFAULT 0,
1004         `visible` tinyint(1) NOT NULL DEFAULT 0,
1005         `spam` tinyint(1) NOT NULL DEFAULT 0,
1006         `starred` tinyint(1) NOT NULL DEFAULT 0,
1007         `ignored` tinyint(1) NOT NULL DEFAULT 0,
1008         `bookmark` tinyint(1) NOT NULL DEFAULT 0,
1009         `unseen` tinyint(1) NOT NULL DEFAULT 1,
1010         `deleted` tinyint(1) NOT NULL DEFAULT 0,
1011         `origin` tinyint(1) NOT NULL DEFAULT 0,
1012         `forum_mode` tinyint(1) NOT NULL DEFAULT 0,
1013         `mention` tinyint(1) NOT NULL DEFAULT 0,
1014         `network` varchar(32) NOT NULL DEFAULT '',
1015          PRIMARY KEY(`iid`),
1016          INDEX `uid_network_commented` (`uid`,`network`,`commented`),
1017          INDEX `uid_network_created` (`uid`,`network`,`created`),
1018          INDEX `uid_contactid_commented` (`uid`,`contact-id`,`commented`),
1019          INDEX `uid_contactid_created` (`uid`,`contact-id`,`created`),
1020          INDEX `uid_created` (`uid`,`created`),
1021          INDEX `uid_commented` (`uid`,`commented`),
1022          INDEX `uid_wall_created` (`uid`,`wall`,`created`)
1023 ) DEFAULT COLLATE utf8mb4_general_ci;
1024
1025 --
1026 -- TABLE tokens
1027 --
1028 CREATE TABLE IF NOT EXISTS `tokens` (
1029         `id` varchar(40) NOT NULL,
1030         `secret` text,
1031         `client_id` varchar(20) NOT NULL DEFAULT '',
1032         `expires` int(11) NOT NULL DEFAULT 0,
1033         `scope` varchar(200) NOT NULL DEFAULT '',
1034         `uid` int(11) NOT NULL DEFAULT 0,
1035          PRIMARY KEY(`id`)
1036 ) DEFAULT COLLATE utf8mb4_general_ci;
1037
1038 --
1039 -- TABLE user
1040 --
1041 CREATE TABLE IF NOT EXISTS `user` (
1042         `uid` int(11) NOT NULL auto_increment,
1043         `guid` varchar(64) NOT NULL DEFAULT '',
1044         `username` varchar(255) NOT NULL DEFAULT '',
1045         `password` varchar(255) NOT NULL DEFAULT '',
1046         `nickname` varchar(255) NOT NULL DEFAULT '',
1047         `email` varchar(255) NOT NULL DEFAULT '',
1048         `openid` varchar(255) NOT NULL DEFAULT '',
1049         `timezone` varchar(128) NOT NULL DEFAULT '',
1050         `language` varchar(32) NOT NULL DEFAULT 'en',
1051         `register_date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1052         `login_date` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1053         `default-location` varchar(255) NOT NULL DEFAULT '',
1054         `allow_location` tinyint(1) NOT NULL DEFAULT 0,
1055         `theme` varchar(255) NOT NULL DEFAULT '',
1056         `pubkey` text,
1057         `prvkey` text,
1058         `spubkey` text,
1059         `sprvkey` text,
1060         `verified` tinyint(1) unsigned NOT NULL DEFAULT 0,
1061         `blocked` tinyint(1) unsigned NOT NULL DEFAULT 0,
1062         `blockwall` tinyint(1) unsigned NOT NULL DEFAULT 0,
1063         `hidewall` tinyint(1) unsigned NOT NULL DEFAULT 0,
1064         `blocktags` tinyint(1) unsigned NOT NULL DEFAULT 0,
1065         `unkmail` tinyint(1) NOT NULL DEFAULT 0,
1066         `cntunkmail` int(11) NOT NULL DEFAULT 10,
1067         `notify-flags` int(11) unsigned NOT NULL DEFAULT 65535,
1068         `page-flags` int(11) unsigned NOT NULL DEFAULT 0,
1069         `account-type` int(11) unsigned NOT NULL DEFAULT 0,
1070         `prvnets` tinyint(1) NOT NULL DEFAULT 0,
1071         `pwdreset` varchar(255) NOT NULL DEFAULT '',
1072         `maxreq` int(11) NOT NULL DEFAULT 10,
1073         `expire` int(11) unsigned NOT NULL DEFAULT 0,
1074         `account_removed` tinyint(1) NOT NULL DEFAULT 0,
1075         `account_expired` tinyint(1) NOT NULL DEFAULT 0,
1076         `account_expires_on` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1077         `expire_notification_sent` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1078         `service_class` varchar(32) NOT NULL DEFAULT '',
1079         `def_gid` int(11) NOT NULL DEFAULT 0,
1080         `allow_cid` mediumtext,
1081         `allow_gid` mediumtext,
1082         `deny_cid` mediumtext,
1083         `deny_gid` mediumtext,
1084         `openidserver` text,
1085          PRIMARY KEY(`uid`),
1086          INDEX `nickname` (`nickname`(32))
1087 ) DEFAULT COLLATE utf8mb4_general_ci;
1088
1089 --
1090 -- TABLE userd
1091 --
1092 CREATE TABLE IF NOT EXISTS `userd` (
1093         `id` int(11) NOT NULL auto_increment,
1094         `username` varchar(255) NOT NULL,
1095          PRIMARY KEY(`id`),
1096          INDEX `username` (`username`(32))
1097 ) DEFAULT COLLATE utf8mb4_general_ci;
1098
1099 --
1100 -- TABLE workerqueue
1101 --
1102 CREATE TABLE IF NOT EXISTS `workerqueue` (
1103         `id` int(11) NOT NULL auto_increment,
1104         `parameter` text,
1105         `priority` tinyint(3) unsigned NOT NULL DEFAULT 0,
1106         `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1107         `pid` int(11) NOT NULL DEFAULT 0,
1108         `executed` datetime NOT NULL DEFAULT '0001-01-01 00:00:00',
1109          PRIMARY KEY(`id`)
1110 ) DEFAULT COLLATE utf8mb4_general_ci;
1111