Maintenance script "setup­Store.php"

Allows to set up the data backend/store
Further Information
Provided by: Semantic MediaWiki
Added: 2.0.0
Removed: still in use
Location (path): ./extensions/SemanticMediaWiki/maintenance/
Table of Contents

The "setupStore.php" is a maintenance script sets up the storage backend currently selected in the "LocalSettings.php" file or the default data backend (store) if no other backend was selected.

This maintenance script deprecated the former "SMW_setup.php" script starting with Semantic MediaWiki 2.0.0Released on 4 August 2014 and compatible with MW 1.19.0 - 1.24.x. while options and usage at that time remain the same. It is strongly encouraged to make the transition to this new script to take advantage of the new features added since and because the old one will will be removed with the release of Semantic MediaWiki 3.0.0Released on 11 October 2018 and compatible with MW 1.27.0 - 1.31.x. in fall 2018.


php setupStore.php [--password|--delete|--backend|--nochecks|--skip-optimize|--skip-import] [backend]
This only shows the script specific parameters.


Generic parameters[edit]

Parameter Description
--help (-h) Display this help message
--quiet (-q) Whether to supress non-error output
--conf: Location of "LocalSettings.php", if not default
--wiki For specifying the wiki ID
--globals Output globals at the end of processing for debugging
--memory-limit Set a specific memory limit for the script, "max" for no limit or "default" to avoid changing it
--server: The protocol and server name to use in URLs, e.g. This is sometimes necessary because server name detection may fail in command line scripts.

Script dependant parameters[edit]

Parameter Description
--dbuser The DB user to use for this script
--dbpass The password to use for this script

Script specific parameters[edit]

Parameter Description
-password The password for the user account
NoteNote: Specifying user credentials in a command line call will usually store them within the shell history file.
--delete Delete all semantic data, uninstall the selected storage backend. This is useful when moving to a new storage engine, and in the rare case of unsinstalling Semantic MediaWiki. Deleted data can be recreated using this script (setup) followed by maintenance script "rebuildData.php"Allows to rebuild all the semantic data for a selected data backend/store (rebuild) but this may take some time.
--backend [backend] Execute the operation for the storage backend of the given name. For instance "SMWSQLStore3" or "SMWSQLStore2".
--nochecks When specified, no prompts are provided. Deletion will thus happen without the need to provide any confirmation.
--skip-optimize1 When specified the key distribution is not being analyzed, optimized and stored. Thus the internal query planner cannot determine the most efficient execution for queries.
--skip-import1 When specified, the import process of default or custom vocabularies is not being done.

If Semantic MediaWiki is not installed in its standard path then the "MW_INSTALL_PATH" environment variable must be set. See README in the maintenance directory.


The following command verbosely creates the tables to be used by the default backend.
php setupStore.php
The following command verbosely deletes existing tables used by the "SMWSQLStore2" backend after prompting for confirmation.
php setupStore.php --delete --backend SMWSQLStore2
The following command skips the database optimization process.
php setupStore.php --skip-optimize
The following command skips the import of vocabularies while still doing the database optimization process.
php setupStore.php --skip-import
This is best used on a regular basis to assure optimal wiki health.

See also[edit]


  1. a b  Semantic MediaWiki: GitHub pull request gh:smw:2801