WordPress で MySQL を使用する
公開: 2023-02-12WordPress Web サイトを管理している場合、そのデータベースがどのように機能するかについてもっと知りたいと思ったことがあるかもしれません。 サイトが舞台裏でどのように機能しているかを理解しておくと役に立ちます。サイトのデータベースに直接アクセスする必要がある場合もあります。
そこで MySQL の出番です。Structured Query Language (SQL) は、WordPress のデータベースの管理システムです。 後で詳しく説明しますが、データベースは Web サイトの頭脳であり、MySQL は神経系であり、情報を取得して操作を実行するためにコマンドをやり取りする神経系であると言えます。
この記事では、WordPress に関して MySQL がどのように機能するかについて詳しく説明します。 さらに、発生する可能性のあるいくつかのデータベース エラーを確認し、それらを修正する方法を説明します。 さっそく飛び込みましょう!
MySQL の説明
ファイリング キャビネット、サイトのすべての重要な情報を分類されたスロットに保持する場所として説明されたデータベースを聞いたことがあるかもしれません。 このアナロジーでは、キャビネット内の個々のフォルダーは、情報を保持するデータベース テーブルです。
MySQL に関しては、これらのフォルダー内にデータを配置または削除する要求がどのように行われるかです。 また、MySQL を使用して、ファイリング キャビネットの各部分に何を配置できるかのルールを設定することもできます。
ただし、MySQL は単独では動作しません。 これは、Web サイトの作成に使用されるソフトウェア アプリケーションのスタックの一部です。 その他のコンポーネントには、Linux、Apache、MySQL、および PHP (LAMP) が含まれます。 彼らは共に、オープンソース プログラミング界の「ドリーム チーム」を形成しています。
WordPress に MySQL を使用する
WordPress に関しては、PHP スクリプト言語を使用して、MySQL データベースから情報を送信および取得します。 これら 2 つの要素は、サイト ユーザーのログインから、動的コンテンツ表示用のテーマおよびプラグイン情報の保存まで、すべてを処理します。
MySQL はテーブル構造を使用してデータを格納します。 ほとんどの Web ホストには、phpMyAdmin と呼ばれる MySQL ユーザー インターフェイス ソフトウェアが付属しています。 この無料のオープンソース ソフトウェアにより、データベース コマンドを簡単に実行できます。 テーブル、行、およびフィールドを編集、削除、または作成できます。
標準の WordPress インストール中に、データベースに 12 個のテーブルが作成されます。 上の画像の左側にそれらがリストされているのを見ることができます。 これらの表には、サイトが機能するために必要な重要な情報が含まれています。
たとえば、 wp_optionsテーブルには、WordPress ダッシュボードの[設定]メニューからアクセスして制御できるオプションが保存されます。 また、さまざまなウィジェット関連の設定のホームでもあります。
phpMyAdmin パネルでわかるように、名前をクリックすると、テーブルに含まれるすべてのデータに関する情報が表示されます。 これには、特定のフィールドに関連付けられた値またはパラメーターが含まれます。
MySQL プラグイン/拡張機能
WordPress 内の MySQL 機能を直接拡張するプラグインは多くありませんが、データベースを手動で変更したり、頻繁に変更したりする予定がある場合は、チェックする価値のあるツールがいくつかあります。
たとえば、Web ホストのコントロール パネルからではなく、WordPress ダッシュボード内からサイトの phpMyAdmin パネルにアクセスできるようにしたい場合、WP phpMyAdmin は便利なプラグインです。
これは、データベースへの便利なアクセスを提供するシンプルですが人気のあるソリューションです。 また、以下で説明するように、MySQL 関連のエラーを解決するのが少し簡単になります。
WordPress の一般的な MySQL エラー (およびその解決方法)
データベース エラーは誰にでも発生する可能性がありますが、対処するのが面倒な場合があります。 あなたの生活をよりシンプルにするために、発生する可能性のある最も一般的な問題と、それぞれの可能性のある解決策を理解するのに役立ちます. 典型的な MySQL の問題の 5 つの例を見てみましょう。
1. データベース接続確立エラー
サイトにアクセスしようとしたときに「データベース接続の確立中にエラーが発生しました」のようなメッセージが表示された場合は、URL が間違ったデータベースを指しているか、サイトで接続エラーが発生している可能性があります。
データベース接続エラーは、Web サイトにアクセスできないことを意味します。 また、管理パネルへのログインもブロックされる可能性があります。 このシナリオでは、 wp-config.phpファイルが原因である可能性が最も高いです。
この問題を解決する最初の方法は、サイトのホスティング アカウントにアクセスし、最新のバックアップを復元することです。 これによりwp-config.phpファイルがリセットされ、管理パネルにアクセスできるようになります。 ただし、サイトのバックアップにアクセスできない場合は、別の解決策があります。
FileZilla などの Secure File Transfer Protocol (SFTP) アプリケーションを使用してwp-config.phpファイルを編集することもできます。 Web サイトに接続すると、サイトのファイルのルート ディレクトリにwp-config.phpファイルが見つかります。
ファイルを開くと、上部にすべてのデータベース情報が表示されます。 次に、データベース名、ユーザー名、またはサイトに関するその他の情報に誤りがないかどうかを確認できます。
この情報に何を含めるべきかわからない場合は、ホストに連絡する必要がある場合があります。 「DB_USER」、「DB_PASSWORD」、および「DB_HOST」が正しいことを確認することに最も関心があります。 必要な修正が完了したら、必ず変更を保存し、ファイルをサイトのサーバーにアップロードしてください。
2. エラー #1005
#1005 エラーは、サイトの問題ではなく、サーバー側の問題です。 必要なテーブルが作成できなかった場合に発生します。 メッセージ文字列の詳細によっては、エラーの原因に関する詳細情報が得られる場合があります。
たとえば、エラー メッセージは次のようになります。
テーブル '%s' を作成できません (エラー番号: %d)
この特定の問題で最も一般的な「errno」は「(errno: 150)」です。 これは、外部キー制約の問題があることを意味します。 つまり、作成しようとしているテーブルが設定された制約と競合している可能性があります。 このエラーは、複数のテーブル間でデータに不整合が発生するのを防いでいます。
外部キー制約エラーを解決するには、少し調査を行い、データベース テーブルに矛盾がないか確認する必要があります。 これは、次のことが必要になることを意味します。
- 関連するテーブルがすべて同じデータベース エンジンを参照していることを確認してください。
- インデックスを作成しているすべてのフィールドのタイプまたは長さが同じであることを確認してください。
通常、このエラーには単純な矛盾が含まれており、修正には少しの時間と忍耐が必要です。
3. エラー #1213
この次のエラーは通常、「ER_LOCK_DEADLOCK」記号の横に表示されます。 次のようなメッセージも表示されます。 トランザクションを再開してみてください。」 幸いなことに、これはすぐに解決できる手順が付属するエラーです。
デッドロックが発生したトランザクションを実行すると、トランザクションは停止してロールバックします。 これは、トランザクションを停止し、行った変更を元に戻す SQL コマンドが原因です。 これは、アプリケーションを停止して修正アクションを実行できるようにする自動「元に戻す」機能と考えることができます。
この場合、トランザクションを再度実行する必要があります。 ロールバックにより、デッドロックを引き起こしたロックが解放され、トランザクションが正常に完了するはずです。
4. エラー #1064
#1064 エラーが発生した場合は、「ER_PARSE_ERROR」というシンボル表示も表示されます。 これは、構文に誤りがあることを意味します。 これは、タイプミス、または古いコマンドの使用が原因である可能性があります。
次のような役立つ情報を含むメッセージも受信する必要があります。
%s 行 %d の '%s' 付近
これにより、クエリ内のおおよその行が表示されます。これを参照して、構文エラーを見つけて修正できます。 特に長いクエリのエラーを見つけるのに役立つオンライン ツールもいくつかあります。
5. エラー # 2003
最後に、MySQL サーバーに接続できない場合、#2003 エラーが発生します。 エラー記号は、ホスト接続の問題を示します。
CR_CONN_HOST_ERROR
つまり、このエラー メッセージは、ネットワーク接続が拒否されたことを示しています。 問題を修正するための最初のステップは、MySQL サーバーが実行されているかどうかを確認することです。 次に、指定したネットワーク接続とポートがサーバーで構成したものと同じであることを確認します。
これは、phpMyAdmin パネルから[ステータス] > [監視]に移動し、問題がないかサーバー上のアクティビティを表示することで実行できます。 サーバーが実行されていない場合は、サーバーを再起動する手順も実行する必要があります。
mysqld プロセスが実行されている場合は、ネットワークへのサーバー接続についてより深い知識を持っている必要があります。これにより、接続の中断の可能性に対処する作業を開始できます。
WP Engine で知識をレベルアップ
誰もが自分のサイトの MySQL サーバーを定期的に使用しているわけではありませんが、エラーが発生した場合にどこに助けを求めればよいかを理解しておくと役に立ちます。 そのため、最適なアドバイスや開発者向けリソースがオンラインで見つかる場所を知っておくと役に立ちます。
サイトを常にスムーズに運営できるように、さまざまなホスティング ソリューションとツールを提供しています。 これには、訪問者に可能な限り最高のデジタル体験を提供するのに役立つ WP エンジン エラー ログが含まれます。