Jump to content

数据库手册:cur表

From mediawiki.org
This page is a translated version of the page Manual:Cur table and the translation is 54% complete.
Outdated translations are marked like this.
手册:索引 MediaWiki数据库布局 cur表
MediaWiki版本:
1.4
The cur and old table were replaced in 2004 .

旧版本的MediaWiki使用cur表来存储页面的当前版本。

在MediaWiki 1.5中,cur表和old 表的内容合并在一起 ,并移到page 表、revision 表和text 表中。

在从MediaWiki 1.4或更早版本更新到较新版本时运行更新程序后,不再需要此表,并且可以安全地删除该表。

唯一访问文章当前版本的一种方式是通过“cur_id”,另一种方式是通过“cur_title”和“cur_namespace”的组合。 请注意,在cur表格中可能有几个条目具有相同的cur_title,例如,StuffTalk:Stuff;但在cur_namespace字段中会有所不同;整数值及其对应的名称(例如,1=“Talk”)在相应的LanguageXX.php文件中设置,也使用变量显示。

Cur表中的一些信息与项目的最后一次更改有关(这很可能是它的创建,由‘cur_is_new’表示)。 “cur_text”保存wikitext。 cur_comment是上次更改的编辑摘要cur_usercur_user_text标识进行该更改的用户,其中cur_user保存该用户的ID(如果他们已登录)。 ‘CUR_TIMESTAMP’表示更改的时间和日期,‘CUR_MINOR_EDIT’在保存时带有该复选框的状态。

其他字段主要用于装饰目的:

  • cur_restrictions - 指定谁可以编辑该页面。 鉴于维基百科的性质,除了受保护的文章外,此字段对所有文章都是空的。
  • cur_counter - 曾经被认为应该计算每个页面的浏览量。 由于繁重的数据库流量和一些错误,该功能被关闭。
  • cur_is_redirect - 是检查cur_text是否以“#reDirect”开头的一种快速而简单的方法。
  • cur_random - 由“随机页面”函数使用。 它存储一个介于0和1之间的随机选择的浮点数。 当有人访问Special:Random时,wiki会选择另一个随机数,并抓取具有最接近的cur_Rander值的页面。 这似乎比具有大量页面的 ORDER BY RAND() Limit 1快得多,因为它是一个简单的列索引查找。
  • inverse_timestamp - MySQL 3.x上用于反向排序的cur_Timestamp字段的反转;在MySQL 4.x上这不是必需的,并且在某些时候应该被删除。
  • cur_touched - 缓存失效的时间戳;在保存页面和创建/删除链接页面时更新

架构摘要

MediaWiki版本:
1.4

DESCRIBE cur;

+-------------------+---------------------+------+-----+---------+----------------+
| Field             | Type                | Null | Key | Default | Extra          |
+-------------------+---------------------+------+-----+---------+----------------+
| cur_id            | int(8) unsigned     |      | PRI | 0       | auto_increment |
| cur_namespace     | tinyint(2) unsigned |      | MUL |         |                |
| cur_title         | varchar(255) binary |      | MUL |         |                |
| cur_text          | mediumtext          |      |     |         |                |
| cur_comment       | tinyblob            |      |     |         |                |
| cur_user          | int(5) unsigned     |      | MUL | 0       |                |
| cur_user_text     | varchar(255) binary |      | MUL |         |                |
| cur_timestamp     | varchar(14) binary  |      | MUL |         |                |
| cur_restrictions  | tinyblob            |      |     |         |                |
| cur_counter       | bigint(20) unsigned |      |     | 0       |                |
| cur_is_redirect   | tinyint(1) unsigned |      |     | 0       |                |
| cur_minor_edit    | tinyint(1) unsigned |      |     | 0       |                |
| cur_is_new        | tinyint(1) unsigned |      |     | 0       |                |
| cur_random        | double unsigned     |      | MUL | 0       |                |
| inverse_timestamp | varchar(14) binary  |      |     |         |                |
| cur_touched       | varchar(14) binary  |      |     |         |                |
+-------------------+---------------------+------+-----+---------+----------------+

索引

MediaWiki版本:
1.4

SHOW INDEX IN cur;

+-------+------------+------------------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name                     | Seq_in_index | Column_name       | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+-------+------------+------------------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| cur   |          0 | PRIMARY                      |            1 | cur_id            | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          0 | name_title                   |            1 | cur_namespace     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          0 | name_title                   |            2 | cur_title         | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | cur_title                    |            1 | cur_title         | A         |           0 |       20 | NULL   |      | BTREE      |         |               |
| cur   |          1 | cur_timestamp                |            1 | cur_timestamp     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | cur_random                   |            1 | cur_random        | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | name_title_timestamp         |            1 | cur_namespace     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | name_title_timestamp         |            2 | cur_title         | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | name_title_timestamp         |            3 | inverse_timestamp | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | user_timestamp               |            1 | cur_user          | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | user_timestamp               |            2 | inverse_timestamp | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | usertext_timestamp           |            1 | cur_user_text     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | usertext_timestamp           |            2 | inverse_timestamp | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | namespace_redirect_timestamp |            1 | cur_namespace     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | namespace_redirect_timestamp |            2 | cur_is_redirect   | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | namespace_redirect_timestamp |            3 | cur_timestamp     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | id_title_ns_red              |            1 | cur_id            | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | id_title_ns_red              |            2 | cur_title         | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | id_title_ns_red              |            3 | cur_namespace     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| cur   |          1 | id_title_ns_red              |            4 | cur_is_redirect   | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
+-------+------------+------------------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+