データベースをSQLiteからMySQLへ移行

2019-03-17
サーバー

ロリポップのプランをエコノミーからライトにグレードアップしたので、データベースをSQLiteからMySQLへ移行しました。途中、結構なトラブルに見舞われたので、報告として書き残します。

参考資料:SQLiteを導入したときの記事(導入方法)
ロリポップのエコノミープランでWordPressをインストール【SQLite】

SQLiteからMySQLの移行はプラグインでは出来ない

WordPressで推奨されていないSQLiteからの移行は結構大変でした。MySQLを使っていればプラグインを使った簡単な引越し方法がありますが、SQLiteの場合はFTPサーバーを使っての物理的な移行しか出来ないことに(この方法が正しいかどうかもわかりません)。

ネットに転がっている色んな方法を検証してみたのですが、プログラムがイマイチよくわからない私にはハードルが高く、オリジナルのやり方で移行しているので保証は出来ない。(2回ほど画面が真っ白になるエラーが出ました)

SQLiteからMySQLへの引越し

まずは肝心のバックアップから。これさえあれば何か問題が起きても大丈夫。

1.FTPソフト(FileZilla)を使ってフォルダごとバックアップ

まずは物理的にバックアップを取ります。FTPソフトを起動し、サーバーに接続。ブログのフォルダを全て自分のローカルPCにコピーし、バックアップを取っておきます。

2.Wordpressのバックアップ(エクスポート)

WordPressの管理画面からバックアップを取ります。管理画面の「ツール」から「エクスポート」を選択。全てのコンテンツにチェックが入っていることを確認し、その下にあるエクスポートボタンを押す。.xmlという拡張子のフォルダがダウンロードされていればOKです。

3.テーマのバックアップ

テーマにバックアップが取れるシステムがあれば念の為取っておきましょう。

4.データを書き換える

今回は同じサーバー内で更新するので、書き換えが必要です。まずはロリポップ管理画面からWordpressをインストールし、ディレクトリやサイト名、パスワードなど、全て以前と同じにします。もしエラーが出る場合は、FTPソフトでフォルダごと削除し、同じ名前で新たに作りましょう。

MySQLに変更したWordpressへログインする

ブラウザのURLウィンドウに「https://自分のサイトURL(ドメイン)/(wordpressが入っているディレクトリ※なければ空白)/wp-admin」を入れアクセスすると、Wordpressのログイン画面が現れます。いつものようにユーザー名とパスワードを入力し、ログイン。

バックアップをインポート

先ほど取っておいたバックアップをインポートします。エクスポートしたときと同じ要領で、「ツール」から「インポート」を選択。「wordpress インポーターの実行」を選択し、次の画面でエクスポートした.xmlのファイルをアップロードし、インポート。完了後、どこまで復元されているか確認します。

足りない素材のダウンロード&再設定

私の場合、投稿記事はバックアップに残っていましたが、テーマや画像などがリンク切れでなくなっていました。ということで、テーマやプラグインなどは再インストールし、画像は手動でフォルダに入れてみました。

画像の格納フォルダは「wp-content」>「uploads」の中

最初にFTPソフトで取っておいたバックアップファイルの中に「wp-content」というフォルダがありますので、その中の「uploads」フォルダを覗いてみてください、今まで使用していた画像データが全て入っているはずです。ここから手動で取り出し、新しいuploadsフォルダに入れてもいいですし、面倒ならフォルダごとFTPソフトで置き換えても上手くいくんじゃないかと思います。(ちなみに私はこの方法を実践しておらず、新しいWordpressの管理画面からメディアライブラリに手動で入れ込みました)

あとがき:最初からMySQLにした方がいい

私がSQLiteを使った理由は、最初にロリポップのエコノミープランで契約してしまったからなので、初めからWordpressを使う予定の人はMySQLが使えるサーバープランにしましょう。SQLiteでもいいのですが、とにかく情報が少ないので、あとで大変な思いをします。

WordPressのテーマはMySQLを使用する前提で作られているので、思わぬ不具合が出たりします。それも考慮に入れ、検討してくださいね。

WordPressの関連記事

【プラグイン関連】
要らなくなったWordPressを削除する方法【ロリポップ向け】
WordPressのプラグインで画像を最適化する
WordPressのバックアップは「All-in-One WP Migration」で
吹き出しのプラグイン「Word Balloon」が可愛い
WordPressでダウンロードボタンを設置する

【テーマ関連】
WordPressのテーマをGodiosに変更した
WordPressのテーマ“Hestia”を使ったカスタマイズ方法
WordPressテーマ“Alternative”を使ってデモサイトを作ってみた
WordPressで画像だけのギャラリーサイトを作った【フランス編】
ブログのWordPressテーマを「yStandard」に変更しました
NY画像集(MoMAデザイン編)を追加
デザイン画像集にポートランド編を追加