WordPressでmysql.sock(MySQLソケット)のパス設定

スポンサーリンク

ローカルマシンに立てた Apache で WordPress を動作させようとしたところ、以下のエラーメッセージがブラウザに表示されて、MySQL への接続が上手くいかないエラーが発生しました。

“No such file or directory (trying to connect via unix:///tmp/mysql.sock)” というメッセージが表示されたので、MySQL のソケットの場所が絡むエラーだなと思い立ちました。

【お知らせ】 英単語を画像イメージで楽に暗記できる辞書サイトを作りました。英語学習中の方は、ぜひご利用ください!
画像付き英語辞書 Imagict | 英単語をイメージで暗記
【開発記録】
英単語を画像イメージで暗記できる英語辞書サービスを作って公開しました
スポンサーリンク

ローカルの MySQL ソケットの場所を変更していたのが原因

先ほどのメッセージから、WordPress は /tmp/mysql.sock のソケットを読みに行っていることが分かった。一方で、以前 Rails の開発でローカルとサーバー側のソケットの場所を統一させるために、ローカルの MySQL ソケットの場所を変更していたのを思い出しました。ブログにもその記録がありました。

Macローカル開発環境のMySQLソケットの場所を変更 | EasyRamble

/var/lib/mysql/mysql.sock に MySQL ソケットの場所を変更していたのですね。なので WordPress が、/var/lib/mysql/mysql.sock を MySQL のソケットの場所として読みに行くように設定すれば良い。

WordPress 側での MySQL ソケット(mysql.sock)のパス設定

WordPress 側で MySQL ソケットのパスを指定する方法は、以下のドキュメントに書いてある。

MySQL ソケットまたはパイプ | wp-config.php の編集 – WordPress Codex 日本語版

WordPress の設定ファイルである wp_config.php で、以下のように編集します。

wp_config.php

wp_config.php 内の DB_HOST の定数定義に、「ホスト名:MySQLソケットのパス」をしてすれば良い。この対策であっさりと MySQL への接続が成功して、WordPress が正常に動作しました。めでたし。

スポンサーリンク
WordPress は人気ナンバーワンのブログ・ウェブサイトの管理ツールです。PHP を使えればカスタマイズできるので、ぜひトライされてみてください。
 
スポンサーリンク

Leave Your Message!