1DROP TABLE IF EXISTS /*_*/archive_tmp; 2 3CREATE TABLE /*$wgDBprefix*/archive_tmp ( 4 ar_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, 5 ar_namespace int NOT NULL default 0, 6 ar_title varchar(255) binary NOT NULL default '', 7 ar_text mediumblob NOT NULL, 8 ar_comment tinyblob NOT NULL, 9 ar_user int unsigned NOT NULL default 0, 10 ar_user_text varchar(255) binary NOT NULL, 11 ar_timestamp binary(14) NOT NULL default '', 12 ar_minor_edit tinyint NOT NULL default 0, 13 ar_flags tinyblob NOT NULL, 14 ar_rev_id int unsigned, 15 ar_text_id int unsigned, 16 ar_deleted tinyint unsigned NOT NULL default 0, 17 ar_len int unsigned, 18 ar_page_id int unsigned, 19 ar_parent_id int unsigned default NULL, 20 ar_sha1 varbinary(32) NOT NULL default '', 21 ar_content_model varbinary(32) DEFAULT NULL, 22 ar_content_format varbinary(64) DEFAULT NULL 23); 24 25INSERT OR IGNORE INTO /*_*/archive_tmp ( 26 ar_namespace, ar_title, ar_title, ar_text, ar_comment, ar_user, ar_user_text, ar_timestamp, 27 ar_minor_edit, ar_flags, ar_rev_id, ar_text_id, ar_deleted, ar_len, ar_page_id, ar_parent_id ) 28 SELECT 29 ar_namespace, ar_title, ar_title, ar_text, ar_comment, ar_user, ar_user_text, ar_timestamp, 30 ar_minor_edit, ar_flags, ar_rev_id, ar_text_id, ar_deleted, ar_len, ar_page_id, ar_parent_id 31 FROM /*_*/archive; 32 33DROP TABLE /*_*/archive; 34 35ALTER TABLE /*_*/archive_tmp RENAME TO /*_*/archive; 36 37CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp); 38CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp); 39CREATE INDEX /*i*/ar_revid ON /*_*/archive (ar_rev_id); 40