Manual:update.php
MediaWiki file: update.php | |
---|---|
Location: | maintenance/ |
Source code: | master • 1.42.3 • 1.41.4 • 1.39.10 |
Classes: | UpdateMediaWiki |
Details
editThe maintenance script update.php checks if the MediaWiki database schema needs to be updated in order to work with the current version of MediaWiki.
You should run update.php
after each upgrade of MediaWiki or after the update or install of an extension that requires a schema update.
Most extensions that require schema updates will say so in their documentation.
From the browser
editIf you do not have access to the command line of your server, then use the web updater to run the update script.
From the command line
editFrom the command line, or an SSH shell or similar:
- Run the update script:
$ php maintenance/run.php update
This maintenance script can be disabled via $wgAllowSchemaUpdates . People with extremely large and busy wikis may need to do upgrades with care, but if you're not sure if that applies to you, then it probably doesn't.
Use the following on Vagrant instances (from within your vagrant ssh).
$ mwscript update.php
Parameters
editThis script offers several parameters (generic, script dependent and script specific) which may be required in some wiki environments.
Generic maintenance parameters
edit--help
- used to get a prompt of all available script parameters (generic, script dependent and script specific) together with short explanations of their usage. These are less often used parameters.
--wiki wikiId
- update wiki family if database name depends on virtual host, where wikiId - database name (e.g. enwiki, dewiki ...)
Script specific parameters
edit--quick
- skip countdown sequence
--nopurge
- (removed in 1.36) do not purge objectcache table. Normally
update.php
purges the objectcache table (generally contains the parser cache and the messages cache), msg_resource and msg_resource_links (these are used for ResourceLoader message caching and are cleared in 1.21 and later) tables in the database, if you don't want to purge this table, use the--nopurge
option. --doshared
- Update shared tables as well.
--force
- Run this script even if it is disabled by configuration options.
--conf
- Specifies the config file (the
LocalSettings.php
file for the specific wiki). Used for wiki families. --noschema
- All changes to the table structure or table additions are skipped. Only data changes are made.
--schema
- No schema changes are made to the database, but the schema changes are saved to a separate SQL file that can be run.
Allows "update.php" to be run when $wgAllowSchemaUpdates is set to false. This is useful for non-WMF environments where strict DB permissions allow database updates (which "update.php" performs), but no schema changes (such as adding or dropping tables or indexes, which "update.php" also performs).
--skip-compat-checks
- Skips compatibility checks (removed in 1.41), Gerrit change 851684
--skip-external-dependencies
- when using composer.local.json to let Composer install extensions and their dependencies, you may see an error message saying that there is a mismatch between the installed and required version (e.g. "mediawiki/semantic-breadcrumb-links: 1.3.0 installed, ~1.3 required"). You can use this parameter to ignore the message and run update.php regardless.
Extensions can install/update their schemas using LoadExtensionSchemaUpdates hook.
See also
edit- Manual:$wgDBadminuser and Manual:$wgDBadminpassword
- For detailed instruction on using
update.php
, see Manual:Upgrading , Manual:Upgrading#Command_line