データベースバージョンの移行の仕方【MySQL】

このブログは、さくらのレンタルサーバを使っていますので、

まだ自分のWEBサイトを作っていない方でしたら

をして頂けるのなら、この記事を読んでスムーズにデータベースの移行ができます。

しかし、契約しているサーバーにログインした後に、

実際にデータベースの移行が行われるのは「phpMyAdmin」という管理ツールのwebページ内なので

サーバーがさくらのレンタルサーバー以外でもこの記事は参考になると思います。

 

古いデータベースを使い続けると色々と危ないです。

古いデータベースバージョンから新しいデータベースバージョンに移行・アップデートせずに使い続けると、

  • セキュリティ面
  • WEBサイト表示速度面
  • SEO面

で損を被りますので、最新のデータベース(MySQL)バージョンに移行しなければなりません。

 

さくらのレンタルサーバー(サーバーコントロールパネル)へのログイン

サーバーコントロールパネルにアクセスし、ログインします。

サーバーコントロールパネル

ドメイン名、パスワード欄については、

という記事を読んで実際にさくらレンタルサーバーを契約すればここで何を入力すれば良いか分かりますが、

ドメイン名(初期ドメイン) (初期アカウント名).sakura.ne.jp
パスワード サーバーコントロールにログインする専用のパスワード

を入力します。

 

さくらインターネットの、会員ログイン(以下のスクリーンショット画像を参照)

会員ログインをクリック

さくらインターネット会員認証画面のスクショ

で出てくる、会員IDとパスワードのことではありません。

 

入力したら、「ログイン(認証)」をクリック。

 

レンタルサーバーにログインしたら、「phpMyAdminログイン」を探す

「Webサイト/データ > データベース」 と表示させてデータベースをクリック。

Webサイト/データ > データベースを表示させます。

 

 

以下の通り、「データベース 」が表示されます。

会員ログイン後、Webサイト/データ > データベース という画面が出現します。

 

「mysql512.db.sakura.ne.jp」と表示されていますが、これは

  • [mysql512]は、さくらサーバーのデータベースバージョンが[5.5]
  • [db]は、”data base”の略
  • [sakura.ne.jp]は、さくらインターネットのレンタルサーバー

という意味を持ちます。

 

この記事を書いている2019年7月27日現在、このブログの運営者である僕自身が

契約しているサーバーのデータベースバージョンを[5.5]から[5.7]に移行させようとしている最中で、自分のデータベースへの理解を深めるために書いています。

[5.7]に移行・アップデートすれば、[mysql600]とか、[mysq530]とかに数字が上がることを意味しています。

では、「phpMyAdminログイン」をクリック。

 

phpMyAdminにログインしたら、「SQL」ファイルをエクスポート(ダウンロード)しよう

「phpMyAdmin へようこそ」が表示されます。

移行前のデータベースバージョンでのphpMyAdminへのログイン画面

 

ここでのユーザー名とは「初期アカウント名」、「パスワード」とは

という記事の「データベースの作成」という見出しに書かれている

データベースを作成した時に設定した「接続パスワード」のことです。

入力したら「実行する」をクリック。

 

「phpMyAdmin 」が表示されます。

移行前のデータベースバージョンへログインした時のphpMyAdminの画面

 

phpMyAdminについて、簡単に説明します。

phpMyAdminとは、oracleという米国企業が開発したMySQLというデータベースを、管理するツールのことです。

また、phpMyAdminは、「PHP」というプログラミング言語で作られています。

phpMyAdminを用いることで、SQL文を記述することなく、MySQLのデータベースに対して様々な操作が行えるのが特徴です。

専門用語が連発して理解が追いつかなかったかと思いますが、「phpMyAdminは、MySQLを管理するツールのこと。」だけ理解すればOKです。

 

上のスクショの左側に、作成したデータベースの一覧が表示されているので

新しいデータベースバージョンに移行したいデータベースをクリックします。

 

クリックすると、以下の通り表示されるので「エクスポート」をクリック。

前のバージョンのデータベースをエクスポートして下さい。

 

  • エクスポートするフォーマットを「SQL」
  • 圧縮を「zip 形式」

と選択し、「実行する」をクリック。

すると、「~.sql.zip」というファイルがダウンロードされます。

エクスポートする形式はSQL

圧縮してエクスポート

 

※上のスクショは、バージョン5.5のものなので、バージョンが変わるたびにデザインが変わっています。

エクスポートするデータベースの容量が多いと、この後行うインポートで失敗してしまいます。

なので、例え容量が小さくても圧縮してエクスポートします。

 

エクスポートしたデータベース内のテーブルのみ削除する

以下のスクショの通り「構造」タブを開いて、間違わずにデータベース内のテーブルのみを削除します。

この以前のデータベースのテーブルを削除するのは、新しい移行先のデータベースでサイトが表示されてからでも構いません。

(「すべてをチェックする」が、スクロールしないと出てこなかったのでスクショが2つに分かれています。)

「構造」タブのテーブルを削除する画像1

「構造」タブのテーブルを削除する画像2

 

 

なぜ、データベース自体を削除してはいけないかと言うと、

データベースの移行に失敗した時に、以前のデータベースに戻ることができれば

何度も新しいデータベースへの移行に挑戦できるからです。

 

この記事の通りやれば、このタイミングで削除してもデータベースの移行は成功すると思いますし

成功する前提ならば、このタイミングで削除すれば、また前のバージョンに戻って前のデータベースを削除する手間が省けます。

あとは、データベースの移行を行う本人に任せます。

 

データベース内のテーブルのみを削除すると、以下のスクショのようになります。

テーブルを削除した後のスクリーンショット

 

削除したテーブルのデータベースと同じデータベース名・接続用パスワードで新たにデータベースを作成する

再度、サーバーコントロールパネルにアクセスし、ログインします。

サーバーコントロールパネル

 

「Webサイト/データ > データベース」 と表示させてデータベースをクリック。

Webサイト/データ > データベースを表示させます。

 

以下の通り、「データベース 」が表示されるので、「新規追加」をクリック。

会員ログイン後、Webサイト/データ > データベース という画面が出現します。

 

以下のスクショのように、「データベース新規作成」が表示されます。

「データベース新規作成」画面が出現します

 

データベース名 削除したテーブルのデータベースと同じデータベース名を入力
データベース接続用パスワード 削除したテーブルのデータベースと同じ接続用パスワードを入力
データベース文字コード 削除したテーブルのデータベースと同じ文字コードを選択

 

文字コードについては、

  • UTF-8 (utf8mb4)
  • UTF-8 (utf8)

という2つがありますが、「UTF-8 (utf8mb4)」を選択しましょう。

 

僕はデータベースバージョンを[5.5]から[5.7]に移行させるならば、

どうせなら移行させる過程をリアルタイムに記事すれば理解が深まるから書きましたが、以下、注意点です。

 

なぜ、データベース自体を削除してはいけないの?
古いデータベースバージョンを削除すると、古いバージョンの再作成が不可能になり、何か間違えた時に[5.5]に戻せないからです。データベースの移行に失敗した時に、以前のデータベースに戻ることができれば何度も新しいデータベースへの移行に挑戦できるからです。

 

入力が終えたら、「作成する」をクリック。

作成が完了すると、以下のスクショのように「データベース 」にデータベースバージョンを[5.7]が表示されます。

データベース一覧に新しいバージョンが表示されました。

 

データベースバージョン[5.7]「mysql699.db.sakura.ne.jp」の、「phpMyAdminログイン」をクリック。

作った新しいバージョンのデータベースに、エクスポートした古いバージョン内のテーブルをインポートする

古いバージョンのデータベースのテーブルをエクスポートした理由は、

それを新しいバージョンのデータベース内にインポートする為です。

 

先ほどの、データベースバージョン[5.7]「mysql699.db.sakura.ne.jp」の、「phpMyAdminログイン」をクリックした後、

以下のスクショの通り、「サーバーの選択:」で、「mysql699」(データベースバージョン[5.7]のこと)となって表示されるので、

ユーザ名、パスワード(この記事を最初から読めば、何を入力すれば良いかわかります。)

を入力して「実行」をクリックすると、ログインできます。

phpMyAdminでサーバを新バージョンを選択します

 

ログイン後、該当する作ったデータベースをクリック。

作った新バージョンのデータベースを選択してクリックします。

 

タブを「インポート」にして、「インポートするファイル:」領域内の、「ファイルを選択」ボックスをクリック。

タブを「インポート」にして、「インポートするファイル:」領域内の、「ファイルを選択」ボックスをクリック。

 

エクスポートした古いバージョンのデータベースを選択したら、「実行」をクリック。

古いバージョンのデータベースを選択し「実行」

本来ならば、「SQLは正常に実行されました。」という表示がされるのですが

データベースの容量が多いのか?以下のようになってしまいますが、

ログインすればしっかりとインポートがされているのでご安心下さいログインすれば、データベース移行が成功しているはずです。

 

「wp-config.php」のホスト名を新しいデータベースサーバ名に変更する

インポートが成功したら、前のバージョンのホスト名のまま新しいバージョンに移行したのでそれを変更します。

新バージョンのデータベースサーバーをコピー

まずは、新バージョンのデータベースサーバーをコピーします。

(以下のスクショでは、「mysql699.db.sakura.ne.jp」にあたります。)

新バージョンのデータベースサーバーをコピーします

 

コピーしたのを、データベースの移行を行いたいドメインの「wp-config.php」に一つずつペーストする

 

3度目?のサーバーコントロールパネルにアクセスし、ログインします。

サーバーコントロールパネル

 

「Webサイト/データ > ファイルマネージャー」と表示させて「ファイルマネージャー」をクリック。

Webサイト/データ > データベースを表示させます。

すると、契約しているさくらサーバーが表示されます。

circulatorbuddy.com

invictus-apotheker.com

yujiyamazato.com

 

と、サーバー内に、取得したドメイン名で名付けたフォルダがあります。

サーバー内データ

 

サーバーのバージョンを移行したいドメインフォルダをクリックして開く

「wp-config.php」を探してクリック

「編集」(鉛筆アイコン)をクリック

wp-config.php

 

データーベースが古いバージョンになっているので、ペーストをして新バージョンに変えておきます。

wp-config.php内のMysqlホスト名を探します。

データベースを新バージョンに変えたら、「保存」をクリック。

 

クリックして開いたドメイン名フォルダに該当するサイトにアクセスをして

サイトが表示されるかを確認します。

 

古いバージョンのデータベースを削除する

全てのサイトで表示の確認ができたら、

サーバーの空き容量を確保する為にも今後使わない古いバージョンのデータベースを削除します。

古いバージョンのデータベースを削除します

 

今後もこのように、ビジネス成功の為の役立つ有益な記事を更新して行きますので下記より

是非ブログ無料購読にご登録下さい。

ブログ無料購読

この記事が気に入ったら
フォローしよう

最新情報をお届けします

Twitterで @yujiyamazato をフォローしよう

おすすめの記事