Mysqlのバージョンの問題(?)でwordpressの移行ができない
解決済
回答 1
投稿
- 評価
- クリップ 1
- VIEW 3,023
Duplicatorを使って、開発環境から本番サーバにWORDPRESSを設定しようとしているのですが、うまくいきません。
【やろうとしていること】
VCCW環境で作ったWPサイトを、Duplicatorでさくらインターネットのレンタルサーバに送ろうとしています。Duplicator自体は最後まで流れますが、最終画面で大量のエラーが出ます。
【エラー内容のキモっぽいところ】
ERROR database error write 'Unknown collation: 'utf8mb4_unicode_520_ci'' - [sql=
CREATE TABLE wp_aiowps_events
(
上記のようなエラーが大量に出ます。
念のため、同じサイトを、XSERVERとロリポップに対してやってみましたが、何の問題もなくスムーズに移行できました。
調べてみたところ、ロリポップはMYSQL5.6、XSERVERは5.7。さくらは5.5です。
さくら側でDB作成するときに文字コードの選択があるのですが、そこはUTF8にしています(utf8mb4_unicode_520_ciという選択肢はありません)。
Duplicator側に文字コードの設定は見つけられないので、さくらインターネットに対しては移行することはできない…ということでしょうか? 多分、何らかの方法があるのではないかと思うのですが、DBの知識があまりないのでどう情報を探していいのかが…。
手動でやらないとダメ…ということになりますでしょうか?
情報をお持ちの方がいらしたら、よろしくお願いいたします。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+3
このあたりは試されましたか?
【【WordPress】DBの文字コードをのエラーがでたときの対処法メモ - Qiita】
http://qiita.com/ituki_b/items/04585c27e5ecdc426005
【WordPressのサーバー移転に関する備忘録 | Scribbling Block.】
https://mtfield.net/wp-change-server-memo/
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.23%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2017/07/29 22:34
【WordPressのサーバー移転に関する備忘録 | Scribbling Block.】の方を参考に、いろいろいじってみました。
あと一歩のところでうまくいっていません><
結論からいうと、テキストエディタが悪いのでは??;;という感じです。
前提条件として、開発環境は職場にしかないので、テストでロリポップに送っていたDBデータをエクスポートして、さくらにインポートする方向でやっています。
まず、さくらの方に普通にWPをクイックインストールして、稼働確認したWPのDBを確認したところ、utf8mb4_unicode_ciになっていました。
そこで、ロリポップのMYSQLからDBをエクスポートし、そのSQL文に下記の置き換えを実施しました。
【DBの文字コード置き換え】
utf8mb4_unicode_520_ci → utf8mb4_unicode_ci
これでさくら側にインポートしてみたのですが、URLを叩いても、なぜかWPのインストール画面が出るばかり;;
いろいろ調べたところ、開発環境ではMYSQLの接頭辞を変更(例:wp_→aaaaaa_)していたのですが、うまくいっているロリポップのMYSQLの接頭辞はwp_になっていました。このあたりはDuplicatorが自動でやる中で起こったことなので、なぜロリポップでは接頭辞がwp_でうまくいっているのかわかりません;;とりあえずロリポップ側は放置することにします。
思い当たるところがそこしかないので、DB接頭辞にも置き換えを実施しました。
【DB接頭辞の置き換え】
wp_ → aaaaaa_
ここで再度さくらのURLを叩いてみると、とりあえずWORDPRESSっぽいものは表示されるのですが、スタイルシートも適用されておらず、404.phpっぽい画面が表示されます。ソースを確認したところ、ロリポップ側のURLが含まれていたので、再度、SQL文の方でロリポップのURLが記載されている箇所を、さくらのURLに変更しました。
【SQL文に含まれるサーバ名の置き換え】
ロリポップURL→さくらURL
これで、さくらのURLを叩いたら、めでたくいい感じで表示されました。安堵したものの、ページをめくるとおかしなことに気づきました。固定ページが404になったり、投稿データの数が少なくなっているんです。
怪しいかなと思うところがひとつ。
DB接頭辞の置き換えはterapadで実施したのですが、「1行8000文字制限を超えている可能性があります。制限を超えている場合は折り返しONで実行してください」というメッセージがでていました。「表示」を「80行で折り返し」にして再度置き換え、インポートしたのですが、そのあたりで何かおかしなことがあったのではと;;
atomでもやってみたのですが、atomは読み込みはできたものの、置き換えをかけると異常終了。
テキストエディタ作業を疑っているのですが、他に何か気づかれたところがありましたら、再度助言いただけると助かりますm(__)m。
2017/07/30 11:43 編集
【【決定版】WordPressの引っ越し!サーバー移行・移転手順 | FASTCODING BLOG】
[https://fastcoding.jp/blog/all/system/moving-wordpress/](https://fastcoding.jp/blog/all/system/moving-wordpress/)
エディタはサクラエディタ(さくらサーバとは関係ない)とか探してみてください。
2017/07/30 15:38
何時間かけてもこんな状況で、情けない限りです。
前述の通り、ロリポップの方はなぜかテーブル接頭辞が変更したものになっていないので、どうにも気になって、XSERVERの方を確認したところ、XSERVERは接頭辞が変更したものになっていたので、XSERVER→さくらの方向で、今朝から再度やっていいます。
ご紹介くださったサイトを元に、プラグインを使わずすべて手作業で進めています。
searchreplacedb2の寸前のところまではうまくいき、さくらのサイトもちゃんと表示されました。
しかし、DB内にXSERVERのURL記述が残っているため、リンクをクリックするとXSERVERの方に行ってしまいます。
ご紹介のサイトを見ながらsearchreplacedb2を動かそうとしたのですが、どうやらバージョンが上がっているようで、画面展開が違います。あちこちをググって、最新バージョンの使い方がないかと探したのですが、見つけきれません。
searchreplacedb2の入力箇所(DB接続のための設定)や、元URLと新URLの記述は間違っていないと思うのですが、旧バージョンでは、設定箇所をすべて入力したあと、SUBMITボタンが出るようなのですが、新バージョンではそれがありません。
おそらくはactionsと書いてあるところに、SUBMITっぽいボタンが並んでいるので、これのどれかを押すのだろうと思うのですが、英語力も微妙なため、どれをクリックすればいいのかわかりません。
並んでいるのは下記のボタンです。
[update details][dry run][live run]/[convert to innodb][convert to utf8 unicode][convert to utf8mb4 unicode]
わからないので、とりあえず[update details][live run]をクリックしてみたのですが、何も変わりませんでした。
[convert to utf8mb4 unicode]をクリックしたら、何やらDBがおかしくなったらしく、ちゃんと表示されていたさくらのサイトが、スタイルシート等が適用されない404.phpっぽいものに変わってしまいました。
ググるとひっかかるsearchreplacedb2に関しての記事は、バージョンが2.Xのようなので、旧バージョンを落とせばいいのでは?と思ったのですが、旧バージョンが落とせるのかどうか、どこにあるのかの情報も見つけ出せません。
このあたりの情報をお持ちではないでしょうか?
一度で解決にいたらず、たびたびのお尋ねになり、本当に申し訳ないです。
2017/07/30 16:22
https://github.com/interconnectit/Search-Replace-DB/releases
ここからダウンロードして実行してみたのですが、結果としては、どうもDBが置き換わっていないようで、さくらのサイトではなくXSERVERに行ってしまいます;;
---------Search-Replace-DB実行後の表示メッセージ(一部伏せ字)---------------------
The dry-run option was checked. No replacements were actually made.
Completed
In the process of searching for "http://xxxxxxxxxx.xsrv.jp/xxxx" (to be replaced by "http://www.xxxxxxxxxx.sakura.ne.jp/xxxx") we scanned 25 tables with a total of 727 rows, 168 cells would have changed. 0 db updates were actually performed. It all took 0.098495 seconds.
------------------------------------------------------------------------------------
マニュアルやテキスト通りにやっているつもりなのに、だいたいいつも何かにひっかかってうまくいかないという実力を遺憾なく発揮しています(泣)。
2017/07/30 16:37
【基本設定(wp-config.phpの設定) | さくらのレンタルサーバでWordPress(ワードプレス)を楽しむ】
http://www.daichinoki.com/%E5%9F%BA%E6%9C%AC%E8%A8%AD%E5%AE%9A%EF%BC%88wp-config-php%E3%81%AE%E8%A8%AD%E5%AE%9A%EF%BC%89-92.html
【wp-config.php の編集 - WordPress Codex 日本語版】
https://wpdocs.osdn.jp/wp-config.php_%E3%81%AE%E7%B7%A8%E9%9B%86
2017/07/30 16:39
ありがとうございます。やっとできました^^
Search-Replace-DB画面の最後のSUBMITをするところで、dry-runというチェックボックスがあったのですが、デフォルトで付いていたので、そのままやればいいのかな…と、そのままでやっていました(全然意味がわかっていない)。
この前の投稿で出ていた「Search-Replace-DB実行後の表示メッセージ」をまじまじと見ていたところ、もしかしてdry-runって、仮に実行してみるけど更新しないよ…って意味かなと思いいたり、外して再実行したらOKでした。
泣き言投稿の繰り返しで、申し訳ありませんでした。
本当に助かりました。ありがとうございます。