Manual:Text table

The text table holds the wikitext of individual page revisions. If using Postgres or Oracle, this table is named pagecontent.

Field names are a holdover from the 'old' revisions table in MediaWiki 1.4 and earlier.

If you updated your wiki from MediaWiki 1.4 or older to a newer version, and if you have then run update.php at least once, you will still have old columns in the text table, whose contents have been migrated to the page table and the revision table (content is copied, not cut). These columns in the text table will not be used anymore. All fields in the text table except old_id, old_text and old_flags are not needed anymore and can be safely deleted.

Schema summary
mysql> describe text; +---+--+--+-+-++ +---+--+--+-+-++ +---+--+--+-+-++
 * Field    | Type             | Null | Key | Default | Extra          |
 * old_id   | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
 * old_text | mediumblob       | NO   |     | NULL    |                |
 * old_flags | tinyblob        | NO   |     | NULL    |                |

mysql> describe text; +---+-+--+-+-++ +---+-+--+-+-++ +---+-+--+-+-++ 3 rows in set
 * Field    | Type            | Null | Key | Default | Extra          |
 * old_id   | int(8) unsigned | NO   | PRI | NULL    | auto_increment |
 * old_text | mediumblob      | NO   |     | NULL    |                |
 * old_flags | tinyblob       | NO   |     | NULL    |                |

old_id
Unique integer used to identify each text. revision.rev_text_id in revision table and archive.ar_text_id are keys to this column.

old_text
The wikitext of the page.

old_flags
Comma-separated list of flags. Contains the following possible values:
 * {|class="wikitable"


 * | gzip
 * | Text is compressed with PHP's gzdeflate function. If the $wgCompressRevisions option is on, new rows (=current revisions) will be gzipped transparently at save time. Previous revisions can also be compressed by using the script compressOld.php
 * | utf-8
 * | Text was stored as UTF-8. If the $wgLegacyEncoding option is on, rows *without* this flag will be converted to UTF-8 transparently at load time.
 * | object
 * | Text field contained a serialized PHP object. The object either contains multiple versions compressed together to achieve a better compression ratio, or it refers to another row where the text can be found.
 * | external
 * | Text was stored in an external location specified by old_text. Any additional flags apply to the data stored at that URL, not the URL itself. The 'object' flag is not set for URLs of the form 'DB://cluster/id/itemid', because the external storage system itself decompresses these.
 * }
 * | external
 * | Text was stored in an external location specified by old_text. Any additional flags apply to the data stored at that URL, not the URL itself. The 'object' flag is not set for URLs of the form 'DB://cluster/id/itemid', because the external storage system itself decompresses these.
 * }