WordPressは初心者向けのプラットフォームとして宣伝されており、初めてウェブサイトを所有する多くの人に人気があります。技術的な知識がなくても、WordPressを使って多くのことが実現できます。

とは言え、プラットフォームを最大限に活用するために、基本的な要素をある程度理解することも重要です。たとえば、しばらくWordPressを使用してきたという人には、これを機にWordPressデータベースのしくみについて勉強してみることをお勧めします。

サイトのデータベースは、サイトが機能するために必要なすべての情報を格納するため、非常に重要です。基本的な知識があれば、使用しているプラットフォームをよりよく理解し、特定のタスクを効率的に実行し、トラブルシューティングすら実行できます。

今回の記事では、WordPressデータベースとは何か、そして、これがどのように機能するかご説明します。さらに、自分のデータベースを見つけて管理する方法も見ていきます。それでは、早速参りましょう!

データベースの基本

「データベース」という概念はWordPressに固有のものではありません。簡単に言うと、データベースとは、 組織化されたデータのまとまりです。このデータは電子的に、通常はコンピュータシステム上に保存され、自由にアクセスできます。データベースのサイズと複雑さは、それぞれ大きく異なります。

全てのデータベースに共通していることとして、情報はアクセスしやすい方法で保存されます。レコードやファイルなどの内部のデータは、通常、行、列、テーブルに編成されます。さらに、データベースは動的です。それにアクセスできる限り、データベース内の情報を追加、削除、変更できます。

データベースには通常、機密データが含まれる可能性があるため、権限のないユーザーを排除するための何らかのセキュリティ策が講じられます。

Why WordPress Requires a Database

一見すると気付かないかもしれませんが、WordPressのウェブサイトの中身は見た目よりもはるかに複雑です。サイトが小さくとも、適切に機能するように裏側では多くのことが行われています。WordPressサイトは、さまざまな種類のデータで構成されています。

ご想像のとおり、そのような情報はすべて一元化されたWordPressデータベースに保存されます。このデータベースが、サイトの実行と、ユーザーや訪問者が加えた変更の保存を可能にします。WordPressデータベースに保存されるデータには、次のものがあります。

つまり、サイトを構成するほぼすべてのものは、データベース内にあることになります。これだけで、データベースの機能を少し学んでみようという気になるはずです。

WordPressデータベースの仕組み

WordPressをサイトにインストールする時、そのプロセスの一環として、あるデータベースが作成されます。通常、これは自動的に行われます。ただし、データベースを手動で作成したり、既存のデータベースを使用して新しいウェブサイトを作成したりすることもできます。

何れにせよ、データベースはほとんどの場合、ホスティングプロバイダーのサーバーに保存されます。これは時に「データベースホスト(database host)」と呼ばれます。ユーザーがサイトにアクセスすると、ブラウザがサイトのサーバーにリクエストを送信します。次にサーバーは、サイトを表示して適切に機能させるために必要なデータを送信します。また、データベースが機能するためには、独自のソフトウェアセットが必要であることにもご注意ください。

WordPressは、オープンソースソフトウェアであるMySQLというデータベース管理システムを使用しています。そのような理由から時に、サイトのデータベースが「MySQLデータベース」と呼ばれる状況に遭遇することもあるかもしれません。MySQLのおかげで、データベースが情報を格納し、あなたがそれにアクセスできるようになります。データを保存、変更、または削除する必要がある場合、WordPressはMySQLの「クエリ」をデータベースに送信します。これは単に、どのデータに影響を与え、どのように処理するか、という指示が出されることを意味します。

これは、かなりシンプルなMySQLクエリの例です。

DELETE FROM wp_comments WHERE wp_comments.comment_approved = 'spam';

これは、ユーザーのコメントに関連し保存されているすべてのデータを確認し、あなたがスパムとしてマークしたすべてのコメントを見つけて削除するように、データベースに指示しています。多くのデータベース関連のクエリは自動的に実行されます。

ただし、データベースに直接アクセスしてこのようなコマンドを手動で実行したり、データベースマネージャーを使用してプロセスを簡略化したりすることもできます。これにより、特定のタスクをダッシュボードで実行するよりも素早く実行でき、他の方法ではできないこと(アカウントのユーザー名の変更など)も実行できます。

WordPressデータベースを見つけ、これにアクセスする方法を簡単にご説明します。でもその前に、データベースにどのようなテーブルが保存されているのか見てみましょう。

WordPressデータベースはどのように情報を整理しているのか

先に簡単に触れましたが、データベース内の情報は整理の上、保存されています。膨大な量の情報は、すばやく簡単にアクセスできるように、一連の「データベーステーブル」に編成されています。簡単に言うと、データベーステーブルはファイリングキャビネットのフォルダのようなもので、特定のカテゴリーのデータが含まれています。事業によっては請求書用や領収書用としてフォルダが分かれているかもしれませんが、WordPressデータベースにはコメント用のテーブル、投稿用のテーブルなどがあります。具体的には、新しいWordPressデータベースには次のテーブルが含まれることになります。

  • wp_commentmeta
  • wp_comments
  • wp_links
  • wp_options
  • wp_postmeta
  • wp_posts
  • wp_terms
  • wp_termmeta
  • wp_term_relationships
  • wp_term_taxonomy
  • wp_usermeta
  • wp_users

ご覧のとおり、それぞれのテーブルの名前を見れば、各テーブルが何を内包しているか、おおよその見当はつくでしょう。さらに、すべてのテーブルには、特定のタイプの情報を保持するさまざまな列やフィールドが含まれています。たとえば、wp_commentsテーブルには、ページや投稿に送信されたコメントに関連するデータが含まれており、その中身は、次の列にさらに分類されます。

  • comment_ID
  • comment_post_ID
  • comment_author
  • comment_author_email
  • comment_author_url
  • comment_author_IP
  • comment_date
  • comment_date_gmt
  • comment_content
  • comment_karma
  • comment_approved
  • comment_agent
  • comment_type
  • comment_parent
  • user_id

つまり、このデータベースは特定の各コメントに関する多くの情報を格納しています。これには、コメント固有のID、コメントが位置している投稿、作成者の情報などが含まれます。前の例のようにスパムコメントを削除したい場合、MySQLクエリを使用して、このデータベーステーブルにアクセスする必要があります。

WordPressデータベースにアクセスして使用する方法(2ステップ)

ほとんどの場合、データベースは自己完結型です。コンテンツを作成してサイトを運営する上で、これにアクセスする必要はありません。とは言え、データベースへのアクセス方法、そしてデータベースの仕組みを理解しておくと、様々な状況で有益です。そもそもWordPressデータベースにアクセスすることが重要になる理由は以下の通りです。

  • 学習目的でアクセスして、サイトの構造をよりよく理解するため
  • WordPressダッシュボードからは処理できないタスクを実行するため
  • 一般的なWordPressエラーのトラブルシューティングプロセスの一環として

データベースに関連するその他の一般的な問題もあります。これを解決する方法はこちらの記事「WordPressの“MySQL Server Has Gone Away”エラーを修正する方法」でご紹介しています。

これを念頭に置いた上で、WordPressデータベースの管理方法を見ていきましょう。

ステップ1:phpMyAdminにログインする

データベースはサイトのサーバーに保存されているため、データベースにアクセスするには、ホスティングプロバイダーを経由する必要があります。つまり、実際の手順は、使用中のウェブホストによって多少異なる場合があります。ただし、ほとんどの場合、phpMyAdminというインターフェースを使用することになります。

何よりもまず、データベースを操作する前に、ウェブサイトの最新のバックアップを用意してください。データベースを誤操作してしまう可能性は常に存在します。元に戻すのは難しく、サイトを破壊する危険性もあります。そこでバックアップさえあれば、万が一エラーが発生しても、サイトを元の状態に復元できます。

次に、ホスティングアカウント内でphpMyAdminを探してください。多くの場合、最初にcPanelにアクセスし、次にphpMyAdminを検索することになります。ただし、お使いのウェブホストが独自の管理システムを採用している場合、手順が少し異なる場合があります。たとえば、Kinstaでは、ユーザーにカスタムホスティングパネルMyKinstaダッシュボードを提供しています。

あなたのサイトがKinstaでホスティングされているなら、ダッシュボードにアクセスし、管理するサイトを選択して「データベースへのアクセス」セクションまでスクロールします。そこに「phpMyAdminを開く」というリンクがあるはずです。

MyKinstaダッシュボード
MyKinstaダッシュボード

ログイン画面が表示されるので、ダッシュボードの「データベースへのアクセス」セクションに記載されているデータベースのユーザー名とパスワードを入力します。すると、phpMyAdmin管理画面が開きます。

ステップ2:データベースにアクセスして変更を加える

どのようにアクセスしようとも、phpMyAdminの外観は一貫しています。

phpMyAdmin管理画面
phpMyAdmin管理画面

画面上部の「データベース」タブをクリックすると、一覧が表示されます。phpMyAdmin自体に関連するものと、ウェブサイト名が付けられたものがあります。後者をクリックすると、データベースが表示されます。

MySQLデータベース
MySQLデータベース

ご覧のとおり、ここには前述のデータベーステーブルのリストが格納されています。それぞれにアクセスして、中にある列とフィールドを確認できます。

MySQLデータベースのwp_options
MySQLデータベースのwp_options

ここから、さまざまなオプションを使用し、データの検索、追加、変更、削除ができます。例として、WordPressアカウントのユーザー名を変更する方法を見てみましょう。これはダッシュボードでは実行できないことですが、データベースにアクセスすると簡単です。

これを行うには、wp_usersテーブルを選択し、変更したいユーザー名の横にある「編集」をクリックします。

データベースを通じてユーザー名を編集する
データベースを通じてユーザー名を編集する

次に、user_loginの項目にある「値」のフィールドに新しいユーザー名を入力します。

WordPressデータベースで直接ユーザー名を更新完了
WordPressデータベースで直接ユーザー名を更新完了

変更を確定するには「実行」を選択します。これにより、アカウントのユーザー名が更新されます。データベース関連のタスクの多くはこれくらい簡単です。必要なのは、適切なデータを見つけて変更することだけ。ただし、これの操作には注意が必要です。最初に、何をしたいのか明確にした上で、どのデータをどのように変更すればいいの解説したガイドやチュートリアルを探すのが最善です。

まとめ

ウェブ開発者でない人にとって、WordPressデータベースを触ることは恐怖かもしれません。しかし、ウェブサイトにあらゆる種類の変更を加えることができるようになるため、学ぶ価値はあります。さらに、ほとんどのホストでは、データベースへのアクセスや管理を簡単にする仕組みが導入されています。

WordPressデータベースには、コンテンツ、ユーザーデータ、設定など、サイト運営に必要なすべての情報が含まれています。この情報は、テーブル、列、フィールドに編成されており、自由に変更できます。ホスティングパネルからphpMyAdminに移動すると、データベースにアクセスできます。最初にサイトをバックアップすることをお忘れなく。変更を加えるときには十分に注意してください。