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" script is a maintenance script that sets up the storage backend currently selected in the "LocalSettings.php" file or the default data backend (store) if no other backend was selected. Semantic MediaWiki 3.2.0Released on 7 September 2020 and compatible with MW 1.31.0 - 1.35.x. brought an improved client output to this maintenance script.1 Moreover this maintenance script now checks if the minimum requirements for the version of the selected data store is met by the respective server's environment.2

This maintenance script should not just be run when updating the Semantic MediaWiki software but also on a regular basis within a period of 90 days maximum to perform an optimization of the wiki's semantic data store. Thus best usage experience by increased performance is being assured. See also the note below on this page.
This maintenance script deprecated the former "SMW_setup.php" script starting with Semantic MediaWiki 1.9.2Released on 18 April 2014 and compatible with MW 1.19.0 - 1.22.x. which was 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 October 2018. When upgrading to Semantic MediaWiki 3.0.0Released on 11 October 2018 and compatible with MW 1.27.0 - 1.31.x. or later the migration to this script must be done.


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


Maintenance scripts provide generic maintenance parameters, script dependent parameters and depending on the maintenance script script specific parameters which are described on this page if provided.

Script specific parameters
Parameter Description
--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-optimize3 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-import3 When specified, the import process of default or custom vocabularies is not being done.



This maintenance script is by default performing a database optimization if not skipped with the --skip-optimize flag. If this was not done within the period of 90 days a maintenance alert will be added to the Semantic MediaWiki dashboard reminding of this task. The last database optimization run is recorded by this maintenance script by adding the last runs timestamp to the last_optimization_run information of the setup information file (".smw.json").4

See also[edit]


  1. ^  Semantic MediaWiki: GitHub pull request gh:smw:4403
  2. ^  Semantic MediaWiki: GitHub pull request gh:smw:4461
  3. a b  Semantic MediaWiki: GitHub pull request gh:smw:2801
  4. ^  Semantic MediaWiki: GitHub pull request gh:smw:4476