1-- This is a copy of MediaWiki 1.23 schema shared by MySQL and SQLite. 2-- It is used for updater testing. Comments are stripped to decrease 3-- file size, as we don't need to maintain it. 4 5CREATE TABLE /*_*/user ( 6 user_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 7 user_name varchar(255) binary NOT NULL default '', 8 user_real_name varchar(255) binary NOT NULL default '', 9 user_password tinyblob NOT NULL, 10 user_newpassword tinyblob NOT NULL, 11 user_newpass_time binary(14), 12 user_email tinytext NOT NULL, 13 user_touched binary(14) NOT NULL default '', 14 user_token binary(32) NOT NULL default '', 15 user_email_authenticated binary(14), 16 user_email_token binary(32), 17 user_email_token_expires binary(14), 18 user_registration binary(14), 19 user_editcount int, 20 user_password_expires varbinary(14) DEFAULT NULL 21) /*$wgDBTableOptions*/; 22CREATE UNIQUE INDEX /*i*/user_name ON /*_*/user (user_name); 23CREATE INDEX /*i*/user_email_token ON /*_*/user (user_email_token); 24CREATE INDEX /*i*/user_email ON /*_*/user (user_email(50)); 25CREATE TABLE /*_*/user_groups ( 26 ug_user int unsigned NOT NULL default 0, 27 ug_group varbinary(255) NOT NULL default '' 28) /*$wgDBTableOptions*/; 29CREATE UNIQUE INDEX /*i*/ug_user_group ON /*_*/user_groups (ug_user,ug_group); 30CREATE INDEX /*i*/ug_group ON /*_*/user_groups (ug_group); 31CREATE TABLE /*_*/user_former_groups ( 32 ufg_user int unsigned NOT NULL default 0, 33 ufg_group varbinary(255) NOT NULL default '' 34) /*$wgDBTableOptions*/; 35CREATE UNIQUE INDEX /*i*/ufg_user_group ON /*_*/user_former_groups (ufg_user,ufg_group); 36CREATE TABLE /*_*/user_newtalk ( 37 user_id int NOT NULL default 0, 38 user_ip varbinary(40) NOT NULL default '', 39 user_last_timestamp varbinary(14) NULL default NULL 40) /*$wgDBTableOptions*/; 41CREATE INDEX /*i*/un_user_id ON /*_*/user_newtalk (user_id); 42CREATE INDEX /*i*/un_user_ip ON /*_*/user_newtalk (user_ip); 43CREATE TABLE /*_*/user_properties ( 44 up_user int NOT NULL, 45 up_property varbinary(255) NOT NULL, 46 up_value blob 47) /*$wgDBTableOptions*/; 48CREATE UNIQUE INDEX /*i*/user_properties_user_property ON /*_*/user_properties (up_user,up_property); 49CREATE INDEX /*i*/user_properties_property ON /*_*/user_properties (up_property); 50CREATE TABLE /*_*/page ( 51 page_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 52 page_namespace int NOT NULL, 53 page_title varchar(255) binary NOT NULL, 54 page_restrictions tinyblob NOT NULL, 55 page_counter bigint unsigned NOT NULL default 0, 56 page_is_redirect tinyint unsigned NOT NULL default 0, 57 page_is_new tinyint unsigned NOT NULL default 0, 58 page_random real unsigned NOT NULL, 59 page_touched binary(14) NOT NULL default '', 60 page_links_updated varbinary(14) NULL default NULL, 61 page_latest int unsigned NOT NULL, 62 page_len int unsigned NOT NULL, 63 page_content_model varbinary(32) DEFAULT NULL 64) /*$wgDBTableOptions*/; 65CREATE UNIQUE INDEX /*i*/name_title ON /*_*/page (page_namespace,page_title); 66CREATE INDEX /*i*/page_random ON /*_*/page (page_random); 67CREATE INDEX /*i*/page_len ON /*_*/page (page_len); 68CREATE INDEX /*i*/page_redirect_namespace_len ON /*_*/page (page_is_redirect, page_namespace, page_len); 69CREATE TABLE /*_*/revision ( 70 rev_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 71 rev_page int unsigned NOT NULL, 72 rev_text_id int unsigned NOT NULL, 73 rev_comment tinyblob NOT NULL, 74 rev_user int unsigned NOT NULL default 0, 75 rev_user_text varchar(255) binary NOT NULL default '', 76 rev_timestamp binary(14) NOT NULL default '', 77 rev_minor_edit tinyint unsigned NOT NULL default 0, 78 rev_deleted tinyint unsigned NOT NULL default 0, 79 rev_len int unsigned, 80 rev_parent_id int unsigned default NULL, 81 rev_sha1 varbinary(32) NOT NULL default '', 82 rev_content_model varbinary(32) DEFAULT NULL, 83 rev_content_format varbinary(64) DEFAULT NULL 84) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=1024; 85CREATE UNIQUE INDEX /*i*/rev_page_id ON /*_*/revision (rev_page, rev_id); 86CREATE INDEX /*i*/rev_timestamp ON /*_*/revision (rev_timestamp); 87CREATE INDEX /*i*/page_timestamp ON /*_*/revision (rev_page,rev_timestamp); 88CREATE INDEX /*i*/user_timestamp ON /*_*/revision (rev_user,rev_timestamp); 89CREATE INDEX /*i*/usertext_timestamp ON /*_*/revision (rev_user_text,rev_timestamp); 90CREATE INDEX /*i*/page_user_timestamp ON /*_*/revision (rev_page,rev_user,rev_timestamp); 91CREATE TABLE /*_*/text ( 92 old_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 93 old_text mediumblob NOT NULL, 94 old_flags tinyblob NOT NULL 95) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=10240; 96CREATE TABLE /*_*/archive ( 97 ar_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 98 ar_namespace int NOT NULL default 0, 99 ar_title varchar(255) binary NOT NULL default '', 100 ar_text mediumblob NOT NULL, 101 ar_comment tinyblob NOT NULL, 102 ar_user int unsigned NOT NULL default 0, 103 ar_user_text varchar(255) binary NOT NULL, 104 ar_timestamp binary(14) NOT NULL default '', 105 ar_minor_edit tinyint NOT NULL default 0, 106 ar_flags tinyblob NOT NULL, 107 ar_rev_id int unsigned, 108 ar_text_id int unsigned, 109 ar_deleted tinyint unsigned NOT NULL default 0, 110 ar_len int unsigned, 111 ar_page_id int unsigned, 112 ar_parent_id int unsigned default NULL, 113 ar_sha1 varbinary(32) NOT NULL default '', 114 ar_content_model varbinary(32) DEFAULT NULL, 115 ar_content_format varbinary(64) DEFAULT NULL 116) /*$wgDBTableOptions*/; 117CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp); 118CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp); 119CREATE INDEX /*i*/ar_revid ON /*_*/archive (ar_rev_id); 120CREATE TABLE /*_*/pagelinks ( 121 pl_from int unsigned NOT NULL default 0, 122 pl_namespace int NOT NULL default 0, 123 pl_title varchar(255) binary NOT NULL default '' 124) /*$wgDBTableOptions*/; 125CREATE UNIQUE INDEX /*i*/pl_from ON /*_*/pagelinks (pl_from,pl_namespace,pl_title); 126CREATE UNIQUE INDEX /*i*/pl_namespace ON /*_*/pagelinks (pl_namespace,pl_title,pl_from); 127CREATE TABLE /*_*/templatelinks ( 128 tl_from int unsigned NOT NULL default 0, 129 tl_namespace int NOT NULL default 0, 130 tl_title varchar(255) binary NOT NULL default '' 131) /*$wgDBTableOptions*/; 132CREATE UNIQUE INDEX /*i*/tl_from ON /*_*/templatelinks (tl_from,tl_namespace,tl_title); 133CREATE UNIQUE INDEX /*i*/tl_namespace ON /*_*/templatelinks (tl_namespace,tl_title,tl_from); 134CREATE TABLE /*_*/imagelinks ( 135 il_from int unsigned NOT NULL default 0, 136 il_to varchar(255) binary NOT NULL default '' 137) /*$wgDBTableOptions*/; 138CREATE UNIQUE INDEX /*i*/il_from ON /*_*/imagelinks (il_from,il_to); 139CREATE UNIQUE INDEX /*i*/il_to ON /*_*/imagelinks (il_to,il_from); 140CREATE TABLE /*_*/categorylinks ( 141 cl_from int unsigned NOT NULL default 0, 142 cl_to varchar(255) binary NOT NULL default '', 143 cl_sortkey varbinary(230) NOT NULL default '', 144 cl_sortkey_prefix varchar(255) binary NOT NULL default '', 145 cl_timestamp timestamp NOT NULL, 146 cl_collation varbinary(32) NOT NULL default '', 147 cl_type ENUM('page', 'subcat', 'file') NOT NULL default 'page' 148) /*$wgDBTableOptions*/; 149CREATE UNIQUE INDEX /*i*/cl_from ON /*_*/categorylinks (cl_from,cl_to); 150CREATE INDEX /*i*/cl_sortkey ON /*_*/categorylinks (cl_to,cl_type,cl_sortkey,cl_from); 151CREATE INDEX /*i*/cl_timestamp ON /*_*/categorylinks (cl_to,cl_timestamp); 152CREATE INDEX /*i*/cl_collation ON /*_*/categorylinks (cl_collation); 153CREATE TABLE /*_*/category ( 154 cat_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 155 cat_title varchar(255) binary NOT NULL, 156 cat_pages int signed NOT NULL default 0, 157 cat_subcats int signed NOT NULL default 0, 158 cat_files int signed NOT NULL default 0 159) /*$wgDBTableOptions*/; 160CREATE UNIQUE INDEX /*i*/cat_title ON /*_*/category (cat_title); 161CREATE INDEX /*i*/cat_pages ON /*_*/category (cat_pages); 162CREATE TABLE /*_*/externallinks ( 163 el_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 164 el_from int unsigned NOT NULL default 0, 165 el_to blob NOT NULL, 166 el_index blob NOT NULL 167) /*$wgDBTableOptions*/; 168CREATE INDEX /*i*/el_from ON /*_*/externallinks (el_from, el_to(40)); 169CREATE INDEX /*i*/el_to ON /*_*/externallinks (el_to(60), el_from); 170CREATE INDEX /*i*/el_index ON /*_*/externallinks (el_index(60)); 171CREATE TABLE /*_*/langlinks ( 172 ll_from int unsigned NOT NULL default 0, 173 ll_lang varbinary(20) NOT NULL default '', 174 ll_title varchar(255) binary NOT NULL default '' 175) /*$wgDBTableOptions*/; 176CREATE UNIQUE INDEX /*i*/ll_from ON /*_*/langlinks (ll_from, ll_lang); 177CREATE INDEX /*i*/ll_lang ON /*_*/langlinks (ll_lang, ll_title); 178CREATE TABLE /*_*/iwlinks ( 179 iwl_from int unsigned NOT NULL default 0, 180 iwl_prefix varbinary(20) NOT NULL default '', 181 iwl_title varchar(255) binary NOT NULL default '' 182) /*$wgDBTableOptions*/; 183CREATE UNIQUE INDEX /*i*/iwl_from ON /*_*/iwlinks (iwl_from, iwl_prefix, iwl_title); 184CREATE INDEX /*i*/iwl_prefix_title_from ON /*_*/iwlinks (iwl_prefix, iwl_title, iwl_from); 185CREATE INDEX /*i*/iwl_prefix_from_title ON /*_*/iwlinks (iwl_prefix, iwl_from, iwl_title); 186CREATE TABLE /*_*/site_stats ( 187 ss_row_id int unsigned NOT NULL, 188 ss_total_views bigint unsigned default 0, 189 ss_total_edits bigint unsigned default 0, 190 ss_good_articles bigint unsigned default 0, 191 ss_total_pages bigint default '-1', 192 ss_users bigint default '-1', 193 ss_active_users bigint default '-1', 194 ss_images int default 0 195) /*$wgDBTableOptions*/; 196CREATE UNIQUE INDEX /*i*/ss_row_id ON /*_*/site_stats (ss_row_id); 197CREATE TABLE /*_*/hitcounter ( 198 hc_id int unsigned NOT NULL 199) ENGINE=HEAP MAX_ROWS=25000; 200CREATE TABLE /*_*/ipblocks ( 201 ipb_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, 202 ipb_address tinyblob NOT NULL, 203 ipb_user int unsigned NOT NULL default 0, 204 ipb_by int unsigned NOT NULL default 0, 205 ipb_by_text varchar(255) binary NOT NULL default '', 206 ipb_reason tinyblob NOT NULL, 207 ipb_timestamp binary(14) NOT NULL default '', 208 ipb_auto bool NOT NULL default 0, 209 ipb_anon_only bool NOT NULL default 0, 210 ipb_create_account bool NOT NULL default 1, 211 ipb_enable_autoblock bool NOT NULL default '1', 212 ipb_expiry varbinary(14) NOT NULL default '', 213 ipb_range_start tinyblob NOT NULL, 214 ipb_range_end tinyblob NOT NULL, 215 ipb_deleted bool NOT NULL default 0, 216 ipb_block_email bool NOT NULL default 0, 217 ipb_allow_usertalk bool NOT NULL default 0, 218 ipb_parent_block_id int default NULL 219) /*$wgDBTableOptions*/; 220CREATE UNIQUE INDEX /*i*/ipb_address ON /*_*/ipblocks (ipb_address(255), ipb_user, ipb_auto, ipb_anon_only); 221CREATE INDEX /*i*/ipb_user ON /*_*/ipblocks (ipb_user); 222CREATE INDEX /*i*/ipb_range ON /*_*/ipblocks (ipb_range_start(8), ipb_range_end(8)); 223CREATE INDEX /*i*/ipb_timestamp ON /*_*/ipblocks (ipb_timestamp); 224CREATE INDEX /*i*/ipb_expiry ON /*_*/ipblocks (ipb_expiry); 225CREATE INDEX /*i*/ipb_parent_block_id ON /*_*/ipblocks (ipb_parent_block_id); 226CREATE TABLE /*_*/image ( 227 img_name varchar(255) binary NOT NULL default '' PRIMARY KEY, 228 img_size int unsigned NOT NULL default 0, 229 img_width int NOT NULL default 0, 230 img_height int NOT NULL default 0, 231 img_metadata mediumblob NOT NULL, 232 img_bits int NOT NULL default 0, 233 img_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, 234 img_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", 235 img_minor_mime varbinary(100) NOT NULL default "unknown", 236 img_description tinyblob NOT NULL, 237 img_user int unsigned NOT NULL default 0, 238 img_user_text varchar(255) binary NOT NULL, 239 img_timestamp varbinary(14) NOT NULL default '', 240 img_sha1 varbinary(32) NOT NULL default '' 241) /*$wgDBTableOptions*/; 242CREATE INDEX /*i*/img_usertext_timestamp ON /*_*/image (img_user_text,img_timestamp); 243CREATE INDEX /*i*/img_size ON /*_*/image (img_size); 244CREATE INDEX /*i*/img_timestamp ON /*_*/image (img_timestamp); 245CREATE INDEX /*i*/img_sha1 ON /*_*/image (img_sha1(10)); 246CREATE INDEX /*i*/img_media_mime ON /*_*/image (img_media_type,img_major_mime,img_minor_mime); 247CREATE TABLE /*_*/oldimage ( 248 oi_name varchar(255) binary NOT NULL default '', 249 oi_archive_name varchar(255) binary NOT NULL default '', 250 oi_size int unsigned NOT NULL default 0, 251 oi_width int NOT NULL default 0, 252 oi_height int NOT NULL default 0, 253 oi_bits int NOT NULL default 0, 254 oi_description tinyblob NOT NULL, 255 oi_user int unsigned NOT NULL default 0, 256 oi_user_text varchar(255) binary NOT NULL, 257 oi_timestamp binary(14) NOT NULL default '', 258 oi_metadata mediumblob NOT NULL, 259 oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, 260 oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", 261 oi_minor_mime varbinary(100) NOT NULL default "unknown", 262 oi_deleted tinyint unsigned NOT NULL default 0, 263 oi_sha1 varbinary(32) NOT NULL default '' 264) /*$wgDBTableOptions*/; 265CREATE INDEX /*i*/oi_usertext_timestamp ON /*_*/oldimage (oi_user_text,oi_timestamp); 266CREATE INDEX /*i*/oi_name_timestamp ON /*_*/oldimage (oi_name,oi_timestamp); 267CREATE INDEX /*i*/oi_name_archive_name ON /*_*/oldimage (oi_name,oi_archive_name(14)); 268CREATE INDEX /*i*/oi_sha1 ON /*_*/oldimage (oi_sha1(10)); 269CREATE TABLE /*_*/filearchive ( 270 fa_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, 271 fa_name varchar(255) binary NOT NULL default '', 272 fa_archive_name varchar(255) binary default '', 273 fa_storage_group varbinary(16), 274 fa_storage_key varbinary(64) default '', 275 fa_deleted_user int, 276 fa_deleted_timestamp binary(14) default '', 277 fa_deleted_reason text, 278 fa_size int unsigned default 0, 279 fa_width int default 0, 280 fa_height int default 0, 281 fa_metadata mediumblob, 282 fa_bits int default 0, 283 fa_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, 284 fa_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") default "unknown", 285 fa_minor_mime varbinary(100) default "unknown", 286 fa_description tinyblob, 287 fa_user int unsigned default 0, 288 fa_user_text varchar(255) binary, 289 fa_timestamp binary(14) default '', 290 fa_deleted tinyint unsigned NOT NULL default 0, 291 fa_sha1 varbinary(32) NOT NULL default '' 292) /*$wgDBTableOptions*/; 293CREATE INDEX /*i*/fa_name ON /*_*/filearchive (fa_name, fa_timestamp); 294CREATE INDEX /*i*/fa_storage_group ON /*_*/filearchive (fa_storage_group, fa_storage_key); 295CREATE INDEX /*i*/fa_deleted_timestamp ON /*_*/filearchive (fa_deleted_timestamp); 296CREATE INDEX /*i*/fa_user_timestamp ON /*_*/filearchive (fa_user_text,fa_timestamp); 297CREATE INDEX /*i*/fa_sha1 ON /*_*/filearchive (fa_sha1(10)); 298CREATE TABLE /*_*/uploadstash ( 299 us_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 300 us_user int unsigned NOT NULL, 301 us_key varchar(255) NOT NULL, 302 us_orig_path varchar(255) NOT NULL, 303 us_path varchar(255) NOT NULL, 304 us_source_type varchar(50), 305 us_timestamp varbinary(14) NOT NULL, 306 us_status varchar(50) NOT NULL, 307 us_chunk_inx int unsigned NULL, 308 us_props blob, 309 us_size int unsigned NOT NULL, 310 us_sha1 varchar(31) NOT NULL, 311 us_mime varchar(255), 312 us_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, 313 us_image_width int unsigned, 314 us_image_height int unsigned, 315 us_image_bits smallint unsigned 316) /*$wgDBTableOptions*/; 317CREATE INDEX /*i*/us_user ON /*_*/uploadstash (us_user); 318CREATE UNIQUE INDEX /*i*/us_key ON /*_*/uploadstash (us_key); 319CREATE INDEX /*i*/us_timestamp ON /*_*/uploadstash (us_timestamp); 320CREATE TABLE /*_*/recentchanges ( 321 rc_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, 322 rc_timestamp varbinary(14) NOT NULL default '', 323 rc_cur_time varbinary(14) NOT NULL default '', 324 rc_user int unsigned NOT NULL default 0, 325 rc_user_text varchar(255) binary NOT NULL, 326 rc_namespace int NOT NULL default 0, 327 rc_title varchar(255) binary NOT NULL default '', 328 rc_comment varchar(255) binary NOT NULL default '', 329 rc_minor tinyint unsigned NOT NULL default 0, 330 rc_bot tinyint unsigned NOT NULL default 0, 331 rc_new tinyint unsigned NOT NULL default 0, 332 rc_cur_id int unsigned NOT NULL default 0, 333 rc_this_oldid int unsigned NOT NULL default 0, 334 rc_last_oldid int unsigned NOT NULL default 0, 335 rc_type tinyint unsigned NOT NULL default 0, 336 rc_source varchar(16) binary not null default '', 337 rc_patrolled tinyint unsigned NOT NULL default 0, 338 rc_ip varbinary(40) NOT NULL default '', 339 rc_old_len int, 340 rc_new_len int, 341 rc_deleted tinyint unsigned NOT NULL default 0, 342 rc_logid int unsigned NOT NULL default 0, 343 rc_log_type varbinary(255) NULL default NULL, 344 rc_log_action varbinary(255) NULL default NULL, 345 rc_params blob NULL 346) /*$wgDBTableOptions*/; 347CREATE INDEX /*i*/rc_timestamp ON /*_*/recentchanges (rc_timestamp); 348CREATE INDEX /*i*/rc_namespace_title ON /*_*/recentchanges (rc_namespace, rc_title); 349CREATE INDEX /*i*/rc_cur_id ON /*_*/recentchanges (rc_cur_id); 350CREATE INDEX /*i*/new_name_timestamp ON /*_*/recentchanges (rc_new,rc_namespace,rc_timestamp); 351CREATE INDEX /*i*/rc_ip ON /*_*/recentchanges (rc_ip); 352CREATE INDEX /*i*/rc_ns_usertext ON /*_*/recentchanges (rc_namespace, rc_user_text); 353CREATE INDEX /*i*/rc_user_text ON /*_*/recentchanges (rc_user_text, rc_timestamp); 354CREATE TABLE /*_*/watchlist ( 355 wl_user int unsigned NOT NULL, 356 wl_namespace int NOT NULL default 0, 357 wl_title varchar(255) binary NOT NULL default '', 358 wl_notificationtimestamp varbinary(14) 359) /*$wgDBTableOptions*/; 360CREATE UNIQUE INDEX /*i*/wl_user ON /*_*/watchlist (wl_user, wl_namespace, wl_title); 361CREATE INDEX /*i*/namespace_title ON /*_*/watchlist (wl_namespace, wl_title); 362CREATE TABLE /*_*/searchindex ( 363 si_page int unsigned NOT NULL, 364 si_title varchar(255) NOT NULL default '', 365 si_text mediumtext NOT NULL 366) ENGINE=MyISAM DEFAULT CHARSET=utf8; 367CREATE UNIQUE INDEX /*i*/si_page ON /*_*/searchindex (si_page); 368CREATE FULLTEXT INDEX /*i*/si_title ON /*_*/searchindex (si_title); 369CREATE FULLTEXT INDEX /*i*/si_text ON /*_*/searchindex (si_text); 370CREATE TABLE /*_*/interwiki ( 371 iw_prefix varchar(32) NOT NULL, 372 iw_url blob NOT NULL, 373 iw_api blob NOT NULL, 374 iw_wikiid varchar(64) NOT NULL, 375 iw_local bool NOT NULL, 376 iw_trans tinyint NOT NULL default 0 377) /*$wgDBTableOptions*/; 378CREATE UNIQUE INDEX /*i*/iw_prefix ON /*_*/interwiki (iw_prefix); 379CREATE TABLE /*_*/querycache ( 380 qc_type varbinary(32) NOT NULL, 381 qc_value int unsigned NOT NULL default 0, 382 qc_namespace int NOT NULL default 0, 383 qc_title varchar(255) binary NOT NULL default '' 384) /*$wgDBTableOptions*/; 385CREATE INDEX /*i*/qc_type ON /*_*/querycache (qc_type,qc_value); 386CREATE TABLE /*_*/objectcache ( 387 keyname varbinary(255) NOT NULL default '' PRIMARY KEY, 388 value mediumblob, 389 exptime datetime 390) /*$wgDBTableOptions*/; 391CREATE INDEX /*i*/exptime ON /*_*/objectcache (exptime); 392CREATE TABLE /*_*/transcache ( 393 tc_url varbinary(255) NOT NULL, 394 tc_contents text, 395 tc_time binary(14) NOT NULL 396) /*$wgDBTableOptions*/; 397CREATE UNIQUE INDEX /*i*/tc_url_idx ON /*_*/transcache (tc_url); 398CREATE TABLE /*_*/logging ( 399 log_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 400 log_type varbinary(32) NOT NULL default '', 401 log_action varbinary(32) NOT NULL default '', 402 log_timestamp binary(14) NOT NULL default '19700101000000', 403 log_user int unsigned NOT NULL default 0, 404 log_user_text varchar(255) binary NOT NULL default '', 405 log_namespace int NOT NULL default 0, 406 log_title varchar(255) binary NOT NULL default '', 407 log_page int unsigned NULL, 408 log_comment varchar(255) NOT NULL default '', 409 log_params blob NOT NULL, 410 log_deleted tinyint unsigned NOT NULL default 0 411) /*$wgDBTableOptions*/; 412CREATE INDEX /*i*/type_time ON /*_*/logging (log_type, log_timestamp); 413CREATE INDEX /*i*/user_time ON /*_*/logging (log_user, log_timestamp); 414CREATE INDEX /*i*/page_time ON /*_*/logging (log_namespace, log_title, log_timestamp); 415CREATE INDEX /*i*/times ON /*_*/logging (log_timestamp); 416CREATE INDEX /*i*/log_user_type_time ON /*_*/logging (log_user, log_type, log_timestamp); 417CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp); 418CREATE INDEX /*i*/type_action ON /*_*/logging (log_type, log_action, log_timestamp); 419CREATE INDEX /*i*/log_user_text_type_time ON /*_*/logging (log_user_text, log_type, log_timestamp); 420CREATE INDEX /*i*/log_user_text_time ON /*_*/logging (log_user_text, log_timestamp); 421CREATE TABLE /*_*/log_search ( 422 ls_field varbinary(32) NOT NULL, 423 ls_value varchar(255) NOT NULL, 424 ls_log_id int unsigned NOT NULL default 0 425) /*$wgDBTableOptions*/; 426CREATE UNIQUE INDEX /*i*/ls_field_val ON /*_*/log_search (ls_field,ls_value,ls_log_id); 427CREATE INDEX /*i*/ls_log_id ON /*_*/log_search (ls_log_id); 428CREATE TABLE /*_*/job ( 429 job_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 430 job_cmd varbinary(60) NOT NULL default '', 431 job_namespace int NOT NULL, 432 job_title varchar(255) binary NOT NULL, 433 job_timestamp varbinary(14) NULL default NULL, 434 job_params blob NOT NULL, 435 job_random integer unsigned NOT NULL default 0, 436 job_attempts integer unsigned NOT NULL default 0, 437 job_token varbinary(32) NOT NULL default '', 438 job_token_timestamp varbinary(14) NULL default NULL, 439 job_sha1 varbinary(32) NOT NULL default '' 440) /*$wgDBTableOptions*/; 441CREATE INDEX /*i*/job_sha1 ON /*_*/job (job_sha1); 442CREATE INDEX /*i*/job_cmd_token ON /*_*/job (job_cmd,job_token,job_random); 443CREATE INDEX /*i*/job_cmd_token_id ON /*_*/job (job_cmd,job_token,job_id); 444CREATE INDEX /*i*/job_cmd ON /*_*/job (job_cmd, job_namespace, job_title, job_params(128)); 445CREATE INDEX /*i*/job_timestamp ON /*_*/job (job_timestamp); 446CREATE TABLE /*_*/querycache_info ( 447 qci_type varbinary(32) NOT NULL default '', 448 qci_timestamp binary(14) NOT NULL default '19700101000000' 449) /*$wgDBTableOptions*/; 450CREATE UNIQUE INDEX /*i*/qci_type ON /*_*/querycache_info (qci_type); 451CREATE TABLE /*_*/redirect ( 452 rd_from int unsigned NOT NULL default 0 PRIMARY KEY, 453 rd_namespace int NOT NULL default 0, 454 rd_title varchar(255) binary NOT NULL default '', 455 rd_interwiki varchar(32) default NULL, 456 rd_fragment varchar(255) binary default NULL 457) /*$wgDBTableOptions*/; 458CREATE INDEX /*i*/rd_ns_title ON /*_*/redirect (rd_namespace,rd_title,rd_from); 459CREATE TABLE /*_*/querycachetwo ( 460 qcc_type varbinary(32) NOT NULL, 461 qcc_value int unsigned NOT NULL default 0, 462 qcc_namespace int NOT NULL default 0, 463 qcc_title varchar(255) binary NOT NULL default '', 464 qcc_namespacetwo int NOT NULL default 0, 465 qcc_titletwo varchar(255) binary NOT NULL default '' 466) /*$wgDBTableOptions*/; 467CREATE INDEX /*i*/qcc_type ON /*_*/querycachetwo (qcc_type,qcc_value); 468CREATE INDEX /*i*/qcc_title ON /*_*/querycachetwo (qcc_type,qcc_namespace,qcc_title); 469CREATE INDEX /*i*/qcc_titletwo ON /*_*/querycachetwo (qcc_type,qcc_namespacetwo,qcc_titletwo); 470CREATE TABLE /*_*/page_restrictions ( 471 pr_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 472 pr_page int NOT NULL, 473 pr_type varbinary(60) NOT NULL, 474 pr_level varbinary(60) NOT NULL, 475 pr_cascade tinyint NOT NULL, 476 pr_user int NULL, 477 pr_expiry varbinary(14) NULL 478) /*$wgDBTableOptions*/; 479CREATE UNIQUE INDEX /*i*/pr_pagetype ON /*_*/page_restrictions (pr_page,pr_type); 480CREATE INDEX /*i*/pr_typelevel ON /*_*/page_restrictions (pr_type,pr_level); 481CREATE INDEX /*i*/pr_level ON /*_*/page_restrictions (pr_level); 482CREATE INDEX /*i*/pr_cascade ON /*_*/page_restrictions (pr_cascade); 483CREATE TABLE /*_*/protected_titles ( 484 pt_namespace int NOT NULL, 485 pt_title varchar(255) binary NOT NULL, 486 pt_user int unsigned NOT NULL, 487 pt_reason tinyblob, 488 pt_timestamp binary(14) NOT NULL, 489 pt_expiry varbinary(14) NOT NULL default '', 490 pt_create_perm varbinary(60) NOT NULL 491) /*$wgDBTableOptions*/; 492CREATE UNIQUE INDEX /*i*/pt_namespace_title ON /*_*/protected_titles (pt_namespace,pt_title); 493CREATE INDEX /*i*/pt_timestamp ON /*_*/protected_titles (pt_timestamp); 494CREATE TABLE /*_*/page_props ( 495 pp_page int NOT NULL, 496 pp_propname varbinary(60) NOT NULL, 497 pp_value blob NOT NULL 498) /*$wgDBTableOptions*/; 499CREATE UNIQUE INDEX /*i*/pp_page_propname ON /*_*/page_props (pp_page,pp_propname); 500CREATE UNIQUE INDEX /*i*/pp_propname_page ON /*_*/page_props (pp_propname,pp_page); 501CREATE TABLE /*_*/updatelog ( 502 ul_key varchar(255) NOT NULL PRIMARY KEY, 503 ul_value blob 504) /*$wgDBTableOptions*/; 505CREATE TABLE /*_*/change_tag ( 506 ct_rc_id int NULL, 507 ct_log_id int NULL, 508 ct_rev_id int NULL, 509 ct_tag varchar(255) NOT NULL, 510 ct_params blob NULL 511) /*$wgDBTableOptions*/; 512CREATE UNIQUE INDEX /*i*/change_tag_rc_tag ON /*_*/change_tag (ct_rc_id,ct_tag); 513CREATE UNIQUE INDEX /*i*/change_tag_log_tag ON /*_*/change_tag (ct_log_id,ct_tag); 514CREATE UNIQUE INDEX /*i*/change_tag_rev_tag ON /*_*/change_tag (ct_rev_id,ct_tag); 515CREATE INDEX /*i*/change_tag_tag_id ON /*_*/change_tag (ct_tag,ct_rc_id,ct_rev_id,ct_log_id); 516CREATE TABLE /*_*/tag_summary ( 517 ts_rc_id int NULL, 518 ts_log_id int NULL, 519 ts_rev_id int NULL, 520 ts_tags blob NOT NULL 521) /*$wgDBTableOptions*/; 522CREATE UNIQUE INDEX /*i*/tag_summary_rc_id ON /*_*/tag_summary (ts_rc_id); 523CREATE UNIQUE INDEX /*i*/tag_summary_log_id ON /*_*/tag_summary (ts_log_id); 524CREATE UNIQUE INDEX /*i*/tag_summary_rev_id ON /*_*/tag_summary (ts_rev_id); 525CREATE TABLE /*_*/valid_tag ( 526 vt_tag varchar(255) NOT NULL PRIMARY KEY 527) /*$wgDBTableOptions*/; 528CREATE TABLE /*_*/l10n_cache ( 529 lc_lang varbinary(32) NOT NULL, 530 lc_key varchar(255) NOT NULL, 531 lc_value mediumblob NOT NULL 532) /*$wgDBTableOptions*/; 533CREATE INDEX /*i*/lc_lang_key ON /*_*/l10n_cache (lc_lang, lc_key); 534CREATE TABLE /*_*/msg_resource ( 535 mr_resource varbinary(255) NOT NULL, 536 mr_lang varbinary(32) NOT NULL, 537 mr_blob mediumblob NOT NULL, 538 mr_timestamp binary(14) NOT NULL 539) /*$wgDBTableOptions*/; 540CREATE UNIQUE INDEX /*i*/mr_resource_lang ON /*_*/msg_resource (mr_resource, mr_lang); 541CREATE TABLE /*_*/msg_resource_links ( 542 mrl_resource varbinary(255) NOT NULL, 543 mrl_message varbinary(255) NOT NULL 544) /*$wgDBTableOptions*/; 545CREATE UNIQUE INDEX /*i*/mrl_message_resource ON /*_*/msg_resource_links (mrl_message, mrl_resource); 546CREATE TABLE /*_*/module_deps ( 547 md_module varbinary(255) NOT NULL, 548 md_skin varbinary(32) NOT NULL, 549 md_deps mediumblob NOT NULL 550) /*$wgDBTableOptions*/; 551CREATE UNIQUE INDEX /*i*/md_module_skin ON /*_*/module_deps (md_module, md_skin); 552CREATE TABLE /*_*/sites ( 553 site_id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, 554 site_global_key varbinary(32) NOT NULL, 555 site_type varbinary(32) NOT NULL, 556 site_group varbinary(32) NOT NULL, 557 site_source varbinary(32) NOT NULL, 558 site_language varbinary(32) NOT NULL, 559 site_protocol varbinary(32) NOT NULL, 560 site_domain VARCHAR(255) NOT NULL, 561 site_data BLOB NOT NULL, 562 site_forward bool NOT NULL, 563 site_config BLOB NOT NULL 564) /*$wgDBTableOptions*/; 565CREATE UNIQUE INDEX /*i*/sites_global_key ON /*_*/sites (site_global_key); 566CREATE INDEX /*i*/sites_type ON /*_*/sites (site_type); 567CREATE INDEX /*i*/sites_group ON /*_*/sites (site_group); 568CREATE INDEX /*i*/sites_source ON /*_*/sites (site_source); 569CREATE INDEX /*i*/sites_language ON /*_*/sites (site_language); 570CREATE INDEX /*i*/sites_protocol ON /*_*/sites (site_protocol); 571CREATE INDEX /*i*/sites_domain ON /*_*/sites (site_domain); 572CREATE INDEX /*i*/sites_forward ON /*_*/sites (site_forward); 573CREATE TABLE /*_*/site_identifiers ( 574 si_site INT UNSIGNED NOT NULL, 575 si_type varbinary(32) NOT NULL, 576 si_key varbinary(32) NOT NULL 577) /*$wgDBTableOptions*/; 578CREATE UNIQUE INDEX /*i*/site_ids_type ON /*_*/site_identifiers (si_type, si_key); 579CREATE INDEX /*i*/site_ids_site ON /*_*/site_identifiers (si_site); 580CREATE INDEX /*i*/site_ids_key ON /*_*/site_identifiers (si_key); 581