SQL内部の一括置換は手動NG!

※Web開発

SQL内部の一括置換は手動NG!searchreplacedb2.phpで置換する方法を解説 | WEB戦略の方程式 (strategy-web.com)

searchreplacedb2.phpで置換する方法を解説

サーバーを変えるときや、ドメイン移管の際にいじるのが、データベース。

そのデータベースはSQLファイルで構成されていて、サイトドメインを変更したりするときはその表記を変えなければいけません。

旧ドメインの表記を、新ドメインの表記に書き換える時に、テキストエディタで一括でやってしまいましょうと言っているサイトやブログも多く見受けられますが…。

実はやってはいけません。
エラーが起きて上手くいかないのが関の山です。

それは、SQLファイルの中のドメイン表記は「シリアライズ」されているからですね。

シリアライズとは、ソフトウェア内部で扱っているデータをそのまま、保存したり送受信することができるように変換すること

覚えておきたい「シリアライズ serialize」
ですが、安心してください。

海外の方が、非常に便利なツールを開発してくれました。

searchreplacedb2.phpというプログラムを使えば、非常に簡単にSQL内の置換作業を一括で終えることが出来ます。

そのやり方をここに紹介していきます。

この記事の目次 [表示]

⇩登場人物の紹介⇩

彩奈 (女性)

一郎 (男性)

筆者のケントです!
記事の感想をURL付きでツイートしてくれた方は、DMでも良いので教えてください。
僕のTwitterでそのツイートを拡散させていただきます^^

searchreplacedb2.phpを使えばSQL内部の置換作業

ではさっそく解説していきます。

以下の通りに進めれば、本当にすぐに終わります。

ホームページへアクセスし、必要事項を記入

まずは、下記のサイトにアクセスしましょう。

参照Wsearchreplacedb2.phpダウンロード

スクロールしていくと、上の画面になるかと思いますので、

I accept this script can be a security risk
I understand that this script must not be left in a public facing web server
I am a developer and I know what I’m doing!

↑これらにチェックを入れて、下の必要事項を記入してメールアドレスを打ち込み「SUBMIT」をクリックします。

メールを受信してダウンロードする

すると、上の画像のようなメールが届くと思いますので、赤ぽちの部分をクリックしましょう。

「use v 2.1.0」というリンクですね。

クリックすると、searchreplacedb2.phpがzipファイルでダウンロードできるかと思います。

解凍して中身をFTPソフトでアップロード

はい、ダウンロードしたファイルを解凍しましょう。

searchreplacedb2.phpが入っているかと思いますので、自身の使用しているサーバのファイルマネージャーかFTPソフトを使い、新サイトのWordPressをインストールしているフォルダにアップロードします。

http://〇〇.com/searchreplacedb2.phpにアクセス

アップロードが完了したら、http://〇〇.com/searchreplacedb2.phpにアクセスしましょう。

新サイトのドメインに /searchreplacedb2.php を追加するという認識で構いません。

項目を確認して画面を進める

すると、上のような画面が出てくるかと思いますので、「Submit」をクリックします。

自分が編集したいデータベースの名前が出てくるので、確認しましょう。

ユーザーネームとパスワードもこの時出てくるので、確認がとれたら「Submit DB details」をクリックします。

Tablesにて、全て選択されていることを確認したら、「Continue」をクリックします。

置換するドメインURLを記入する

上のような画面になります。

Search for →旧サイトのドメイン
Replace with →新サイトのドメイン

を入力していきます。

どちらも最後の「/」スラッシュは入れないように気を付けてください。

終わりましたら、「Submit Search string」をクリックします。

確認して終了

新サイトにアクセスしてみて、データが完全に移行されていることを確認したら完了です。
その前に「wp-config.php」ファイルを編集しなければいけないケースもありますが、それはFTPソフト上で大丈夫でしょう。

まとめ:SQLファイル内部の一括置換はテキストエディタではなくこの方法で

思ったより簡単すぎてビックリされたかと思います。

このsearchreplacedb2.phpを使ってSQLファイルをいじる方法は、WEB屋をやられている方からすると常識のように言われますが、WordPressユーザーは知らないことが多いです。

かなり便利な手法なので、覚えておいても損はないかと思います。

また、この作業が終わりましたら、アップロードしたsearchreplacedb2.phpファイルは削除しておくことを徹底してください。

第三者からもSQLファイルをいじられてしまう可能性があるためです。

それではこの記事は終了となります。

タイトルとURLをコピーしました