Manual:Database layout


 * Schema redirects here; for information about the Schema: namespace, see , and for the structure of extension.json, see .

Prior to MediaWiki 1.35, the SQL code that creates the  core tables for any MediaWiki version—with extensive comments—is in the  source file.

As of 1.35 (and continuing during 1.36), the appropriate file is in the  source file, which is then transformed into . In these versions  is less relevant, though some tables are still in there that haven't been migrated yet.

The most important tables are probably <tvar|page></>, <tvar|revision></>, <tvar|text></> and <tvar|user></>.

Version history
The following table depicts the range of MediaWiki versions over which each table has existed in the schema. Red rows indicate tables that are no longer used by the core nor added by the installer as of a particular version. They might however still be used by extensions. Note, table headings are repeated every 10 rows for clarity.

Database management systems
In MediaWiki master, tables.sql is currently being migrated to <tvar|tabsles-json></>, and documenting comments should be found there instead of the resultant sql files.

See the latest MariaDB/MySQL-compatible versions from Git: <tvar|mysql></>, <tvar|mysql-generated></>.

If using <tvar|man-sqlite></>, the files <tvar|sqlite-generated></> and the unmigrated MySQL tables in <tvar|mysql></> should be viewed instead.

If using <tvar|man-postgres></>, the files <tvar|postgres></> and <tvar|postgres-generated></> should be viewed instead.

If using man-mssql>Special:MyLanguage/Manual:Microsoft SQL Server</>|Microsoft SQL Server, see <tvar|mssql></>.

If using man-oracle>Special:MyLanguage/Manual:Oracle</>|Oracle, see <tvar|oracle></>.