Search Replace DB V3.1 でSQLSTATE [2054] エラー

SQL STATE エラーで動かない

どうも、KoMAです。

今日はいつもお世話になっている WordPress の文字列置換プログラム(Search Replace DB V3.1)でエラーが発生したので、その回避方法を備忘録として残しておきます。

このプログラムはドメインの載せ替えでよく利用するのですが、今回、以下のようなエラーが発生して動いくれませんでした。

SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

SQLSTATE error

どうも送信しているパスワードの形式がまずく受け付けてくれないということのようです。完全にサーバー環境依存の問題です。何か回避方法はないかと思い検索していたらプログラムの配布サイトにQAがありました。

https://interconnectit.com/blog/2015/07/08/say-hello-to-search-replace-db-v3-1/

このページの[Authentication methods]という見出しの部分がそうです。このページによると Search Replace DB の古いバージョン(v2.1) なら古いパスワード形式を利用しており役に立つかもねと書いてあります。

なるほど。でもその v2.1 とやらはどこにあるのか・・・

探してみたところ、最新バージョンを申請すると古いバージョンのリンクも一緒にメールで送られてくるようです。

https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

ダウンロードの申請方法

上記3つのチェックボックスにチェックを入れると、メールアドレスを入力する欄と [submit]ボタンが出現します。(ちゃんとリスクを理解して使いますという同意のチェックボックス)

でさっそく上記ページから最新バージョンをダウンロード申請してみたところ、確かに v2.1 のダウンロードリンクも掲載されていました。

Search Replace DB のメールの内容

ダウンロードすると、「searchreplacedb2.php」という1ファイルだけが入っていました。v3.1 は複数のファイルとフォルダで構成されていますが、v2.1 は1ファイルだけなんですね。

これを置換したいドメインのルートに FTPソフトでアップロード。

http://そのドメイン名/searchreplacedb2.php にアクセスすると置換プログラムを実行することができます。

※以下の操作でミスをすると重大なエラーが起きる可能性があります。必ずバックアップを取ってから行いましょう。以下の操作は自己責任でお願いします。
※バックアップはプラグインではなく MySQL Adminツールで直接取る方がいいかもしれません。ログインできない状態になった場合でもすぐに対処できるからです。なおプラグインでのバックアップでも WordPress を新規インストールすれば復元は可能です。

search-replace-db v2.1

[Pre-populate the DB values ・・・] のチェックを入れ、[submit] をクリック。

データベース名等の入力

1つ前の画面でチェックを入れていればデータが入っているはずなので、そのまま [Submit DB details] をクリック。

データベース テーブルを選択する

必要であればデータベースのテーブルを選択。1WordPress1DB で運用していれば全選択でOKです。

確認メッセージ

確認画面が出てくるので [OK] をクリック。

置換する文字列を入力する

[Search for]欄に検索対象の文字列を入力。ドメイン名の置換なら現在のドメイン名を入力。http://等は不要。ただし、wwwあり、なしには注意。

[Replace with:]欄に置換する文字列を入力。ドメイン名の置換なら新しいドメイン名を入力する。

最終確認の画面

確認画面で表示されるので、[OK] をクリック。

完了画面

これで置換が完了です。アップロードした searchreplacedb2.php はサーバーから忘れず削除しておきましょう。

 コメント/質問、お気軽にどうぞ。

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

関連記事がありません。