| [ Index ] | PHP Cross Reference of MediaWiki-1.24.0 | 
[Summary view] [Print] [Text view]
1 2 This file provides an overview of the MediaWiki upgrade process. For help with 3 specific problems, check 4 5 * the documentation at https://www.mediawiki.org 6 * the mediawiki-l mailing list archive at 7 http://lists.wikimedia.org/pipermail/mediawiki-l/ 8 * the bug tracker at https://bugzilla.wikimedia.org 9 10 for information and workarounds to common issues. 11 12 == Overview == 13 14 Comprehensive documentation on upgrading to the latest version of the software 15 is available at https://www.mediawiki.org/wiki/Manual:Upgrading. 16 17 === Consult the release notes === 18 19 Before doing anything, stop and consult the release notes supplied with the new 20 version of the software. These detail bug fixes, new features and functionality, 21 and any particular points that may need to be noted during the upgrade 22 procedure. 23 24 === Backup first === 25 26 It is imperative that, prior to attempting an upgrade of the database schema, 27 you take a complete backup of your wiki database and files and verify it. While 28 the upgrade scripts are somewhat robust, there is no guarantee that things will 29 not fail, leaving the database in an inconsistent state. 30 31 https://www.mediawiki.org/wiki/Manual:Backing_up_a_wiki provides an overview of 32 the backup process. You should also refer to the documentation for your 33 database management system for information on backing up a database, and to 34 your operating system documentation for information on making copies of files. 35 36 === Perform the file upgrade === 37 38 Download the files for the new version of the software. These are available 39 as a compressed "tar" archive from the Wikimedia Download Service 40 (http://download.wikimedia.org/mediawiki). 41 42 You can also obtain the new files directly from our Git source code 43 repository. 44 45 Replace the existing MediaWiki files with the new. You should preserve the 46 LocalSettings.php file and the "extensions" and "images" directories. 47 48 Depending upon your configuration, you may also need to preserve additional 49 directories, including a custom upload directory ($wgUploadDirectory), 50 deleted file archives, and any custom skins. 51 52 === Perform the database upgrade === 53 54 As of 1.21, it is possible to separate schema changes (i.e. adding, 55 dropping, or changing tables, fields, or indices) from all other 56 database changes (e.g. populating fields). If you need this 57 capability, see "From the command line" below. 58 59 ==== From the web ==== 60 61 If you browse to the web-based installation script (usually at 62 /mw-config/index.php) from your wiki installation you can follow the script and 63 upgrade your database in place. 64 65 ==== From the command line ==== 66 67 From the command line, browse to the "maintenance" directory and run the 68 update.php script to check and update the schema. This will insert missing 69 tables, update existing tables, and move data around as needed. In most cases, 70 this is successful and nothing further needs to be done. 71 72 If you need to separate out the schema changes so they can be run 73 by someone with more privileges, then you can use the --schema option 74 to produce a text file with the necessary commands. You can use 75 --schema, --noschema, $wgAllowSchemaUpdates as well as proper database 76 permissions to enforce this separation. 77 78 === Check configuration settings === 79 80 The names of configuration variables, and their default values and purposes, 81 can change between release branches, e.g. $wgDisableUploads in 1.4 is replaced 82 with $wgEnableUploads in later versions. When upgrading, consult the release 83 notes to check for configuration changes which would alter the expected 84 behavior of MediaWiki. 85 86 === Check installed extensions === 87 88 Extensions usually need to be upgraded at the same time as the MediaWiki core. 89 90 In MediaWiki 1.14 some extensions were migrated into the core. Please see the 91 HISTORY section "Migrated extensions" and disable these extensions in your 92 LocalSettings.php 93 94 === Test === 95 96 It makes sense to test your wiki immediately following any kind of maintenance 97 procedure, and especially after upgrading; check that page views and edits work 98 normally and that special pages continue to function, etc. and correct errors 99 and quirks which reveal themselves. 100 101 You should also test any extensions, and upgrade these if necessary. 102 103 == Upgrading from 1.16 or earlier == 104 105 If you have a Chinese or Japanese wiki ($wgLanguageCode is set to one 106 of "zh", "ja", or "yue") and you are using MySQL fulltext search, you 107 will probably want to update the search index. 108 109 In the "maintenance" directory, run the updateDoubleWidthSearch.php 110 script. This will update the searchindex table for those pages that 111 contain double-byte latin characters. 112 113 == Upgrading from 1.8 or earlier == 114 115 MediaWiki 1.9 and later no longer keep default localized message text 116 in the database; 'MediaWiki:'-namespace pages that do not exist in the 117 database are simply transparently filled-in on demand. 118 119 The upgrade process will delete any 'MediaWiki:' pages which are left 120 in the default state (last edited by 'MediaWiki default'). This may 121 take a few moments, similar to the old initial setup. 122 123 Note that the large number of deletions may cause older edits to expire 124 from the list on Special:Recentchanges, although the deletions themselves 125 will be hidden by default. (Click "show bot edits" to list them.) 126 127 See RELEASE-NOTES for more details about new and changed options. 128 129 == Upgrading from 1.7 or earlier == 130 131 $wgDefaultUserOptions now contains all the defaults, not only overrides. 132 If you're setting this as a complete array(), you may need to change it 133 to set only specific items as recommended in DefaultSettings.php. 134 135 == Upgrading from 1.6 or earlier == 136 137 $wgLocalTZoffset was in hours, it is now using minutes. 138 139 == Upgrading from 1.5 or earlier == 140 141 Major changes have been made to the schema from 1.4.x. The updater 142 has not been fully tested for all conditions, and might well break. 143 144 On a large site, the schema update might take a long time. It might 145 explode, or leave your database half-done or otherwise badly hurting. 146 147 Among other changes, note that Latin-1 encoding (ISO-8859-1) is 148 no longer supported. Latin-1 wikis will need to be upgraded to 149 UTF-8; an experimental command-line upgrade helper script, 150 'upgrade1_5.php', can do this -- run it prior to 'update.php' or 151 the web upgrader. 152 153 NOTE that upgrade1_5.php does not work properly with recent version 154 of MediaWiki. If upgrading a 1.4.x wiki, you should upgrade to 1.5 155 first. upgrade1_5.php has been removed from MediaWiki 1.21. 156 157 If you absolutely cannot make the UTF-8 upgrade work, you can try 158 doing it by hand: dump your old database, convert the dump file 159 using iconv as described here: 160 http://portal.suse.com/sdb/en/2004/05/jbartsh_utf-8.html 161 and then reimport it. You can also convert filenames using convmv, 162 but note that the old directory hashes will no longer be valid, 163 so you will also have to move them to new destinations. 164 165 Message changes: 166 * A number of additional UI messages have been changed from HTML to 167 wikitext, and will need to be manually fixed if customized. 168 169 === Configuration changes from 1.4.x: === 170 171 $wgDisableUploads has been replaced with $wgEnableUploads. 172 173 $wgWhitelistAccount has been replaced by the 'createaccount' permission 174 key in $wgGroupPermissions. To emulate the old effect of setting: 175 $wgWhitelistAccount['user'] = 0; 176 set: 177 $wgGroupPermissions['*']['createaccount'] = false; 178 179 $wgWhitelistEdit has been replaced by the 'edit' permission key. 180 To emulate the old effect of setting: 181 $wgWhitelistEdit = true; 182 set: 183 $wgGroupPermissions['*']['edit'] = false; 184 185 If $wgWhitelistRead is set, you must also disable the 'read' permission 186 for it to take affect on anonymous users: 187 $wgWhitelistRead = array( "Main Page", "Special:Userlogin" ); 188 $wgGroupPermissions['*']['read'] = false; 189 190 Note that you can disable/enable several other permissions by modifying 191 this configuration array in your LocalSettings.php; see DefaultSettings.php 192 for the complete default permission set. 193 194 If using Memcached, you must enabled it differently now: 195 $wgUseMemCached = true; 196 should be replaced with: 197 $wgMainCacheType = CACHE_MEMCACHED; 198 199 == Upgrading from 1.4.2 or earlier == 200 201 1.4.3 has added new fields to the sitestats table. These fields are 202 optional and help to speed Special:Statistics on large sites. If you 203 choose not to run the database upgrades, everything will continue to 204 work in 1.4.3. 205 206 You can apply the update by running maintenance/update.php, or 207 manually run the SQL commands from this file: 208 maintenance/archives/patch-ss_total_articles.sql 209 210 211 == Upgrading from 1.4rc1 or earlier betas == 212 213 The logging table has been altered from 1.4beta4 to 1.4beta5 214 and again in 1.4.0 final. Copy in the new files and use the web 215 installer to upgrade, or the command-line maintenance/update.php. 216 217 If you cannot use the automated installers/updaters, you may 218 update the table by manually running the SQL commands in these 219 files: 220 maintenance/archives/patch-log_params.sql 221 maintenance/archives/patch-logging-title.sql 222 223 224 == Upgrading from 1.3 or earlier == 225 226 This should generally go smoothly. 227 228 If you keep your LocalSettings.php, you may need to change the style paths 229 to match the newly rearranged skin modules. Change these lines: 230 $wgStylePath = "$wgScriptPath/stylesheets"; 231 $wgStyleDirectory = "$IP/stylesheets"; 232 $wgLogo = "$wgStylePath/images/wiki.png"; 233 234 to this: 235 $wgStylePath = "$wgScriptPath/skins"; 236 $wgStyleDirectory = "$IP/skins"; 237 $wgLogo = "$wgStylePath/common/images/wiki.png"; 238 239 As well as new messages, the processing of some messages has changed. 240 If you have customized them, please compare the new format using 241 Special:Allmessages or the relevant LanguageXX.php files: 242 243 * copyrightwarning 244 * dberrortext 245 * editingcomment (was named commentedit) 246 * editingsection (was named sectionedit) 247 * numauthors 248 * numedits 249 * numtalkauthors 250 * numtalkedits 251 * numwatchers 252 * protectedarticle 253 * searchresulttext 254 * showhideminor 255 * unprotectedarticle 256 257 Note that the 1.3 beta releases included a potential vulnerability if PHP 258 is configured with register_globals on and the includes directory is 259 served to the web. For general safety, turn register_globals *off* if you 260 don't _really_ need it for another package. 261 262 If your hosting provider turns it on and you can't turn it off yourself, 263 send them a kind note explaining that it can expose their servers and their 264 customers to attacks. 265 266 267 == Upgrading from 1.2 or earlier == 268 269 If you've been using the MediaWiki: namespace for custom page templates, 270 note that things are a little different. The Template: namespace has been 271 added which is more powerful -- templates can include parameters for 272 instance. 273 274 If you were using custom MediaWiki: entries for text inclusions, they 275 will *not* automatically be moved to Template: entries at upgrade time. 276 Be sure to go through and check that everything is working properly; 277 you can move them manually or you can try using moveCustomMessages.php 278 in maintenance/archives to do it automatically, but this might break things. 279 280 Also, be sure to pick the correct character encoding -- some languages were 281 only available in Latin-1 on 1.2.x and are now available for Unicode as well. 282 If you want to upgrade an existing wiki from Latin-1 to Unicode you'll have 283 to dump the database to SQL, run it through iconv or another conversion tool, 284 and restore it. Sorry. 285 286 287 == Upgrading from 1.1 or earlier == 288 289 This is less thoroughly tested, but should work. 290 291 You need to specify the *admin* database username and password to the 292 installer in order for it to successfully upgrade the database structure. 293 You may wish to manually change the GRANTs later. 294 295 If you have a very old database (earlier than organized MediaWiki releases 296 in late August 2003) you may need to manually run some of the update SQL 297 scripts in maintenance/archives before the installer is able to pick up 298 with remaining updates.
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Fri Nov 28 14:03:12 2014 | Cross-referenced by PHPXref 0.7.1 |