Manual:Database layout/ja

Other languages: English (en) ...このページを翻訳して下さい！ 英語版がオリジナルです.

< Help:MediaWikiアーキテクチャ

Wiki のほとんどのデータは MySQL で作成したデータベースに格納されます. データベースの設定については MySQL config をご覧下さい.

いくつかのデータはファイルシステム内にのみ格納され、ソレ以外のデータキャッシュなどもファイルシステム中に格納されます. データの中には memcached にキャッシュされるものも有りますがこれらはデータベース内に存在するデータのコピーです.

以下のソースをお調べ下さい：
 * schema.doc
 * maintenance/tables.sql

現在、データベースのテーブル構成は以下のようになっています.
 * archive テーブル - 「削除された」ページ
 * blobs table
 * brokenlinks table - 実際には存在しないページへのプロジェクト内リンク
 * categorylinks table
 * cur テーブル - 現行のページ
 * hitcounter table
 * image table
 * imagelinks table - ページでの画像の使用状況を捕捉するためのテーブル（以下参照）
 * interwiki table
 * ipblocks table
 * links テーブル - 実際に存在するページへのプロジェクト内リンク
 * linkscc table - （以下参照）
 * math table
 * objectcache table
 * old テーブル - ページの古いバージョン
 * oldimage table
 * querycache table
 * recentchanges table
 * searchindex table
 * site_stats table
 * testac table
 * user table
 * user_newtalk table
 * watchlist table

リンクテーブルの解説
テーブルには links、brokenlinks、imagelinks の3種類のlinkテーブルが有ります. これらは主に他のテーブルとセットで以下の用途に使用されます.
 * What links here（リンク元）と Related changes（リンク先の変更）の機能を可能にするため、あるページにリンクしているページと、あるページからリンクしているページを把握するため.
 * Image を利用している際に Image の詳細ページへのリンクを把握するため
 * Most wanted pages（執筆が望まれているページ）、Orphans（孤立したページ）、Unused images（孤立した画像）の生成用
 * 各ページの表示時にリンクするスタイルを決定するための処理にかかる時間を提言するため.

また、最近のソフトウェアでは新たに 'linkscc' テーブルがもうけられており、これは上記3つのテーブルの情報をキャッシュし、レンダリングの高速化のためだけに使用しています.

リンクテーブルの維持
たとえば、cur テーブルをデータとして読み込んだとしても、リンクの再構成をしない限り、"What links here"、"Related changes"、"Orphans" などの機能は使用できません. ま、できなくてもいいなら別にいいんだけどね. (Brion Vibber)

関連項目

 * Experimental new database schema 22:55, 24 Jul 2003 - 過去のスキーマ変更
 * Proposed Database Schema Changes 18:19, 23 Dec 2003
 * en:Wikipedia:Database queries
 * nl:Wikipedia:SQL opdrachten（オランダ語）
 * Documentation: Developer's Guide

次のページ : インストール >