ローカル環境に構築したWordPressのデータベースを書き換えるためSearch Replace DBを使用したのですが、Search Replace DBにアクセスすると「SQLSTATE[HY000] [2002] No such file or directory」のエラーが出ました。
No such file or directory
そのようなファイル、またはディレクトリはありません
目次
解決方法
WordPressのwp-config.php
を編集します。
Local by Flywheelの場合だと下記の場所にあると思います。
C:\Users\PCのユーザ名\Local Sites\サイト名\app\public\wp-config.php
wp-config.php
の下記の場所を探し、localhost
→127.0.0.1
に変更することで回避できます。
/** MySQL のホスト名 */ define('DB_HOST', 'localhost');
原因は?
原因はMySQLの接続。「localhost」と「127.0.0.1」の違いを理解していなかったためでした。
「localhost」だとWindowsでは名前付きパイプを使用して接続され、名前付きパイプ接続が有効にされていない場合は、エラーが発生するそうです。
「127.0.0.1」はTCP/IPで接続されるため、エラーが出なくなったというわけでした。