【ハンズオン】MySQL5.0からMySQL5.7にデータベースを移行する
はじめに
移行元のMySQL5.0データベースのダンプをとって、移行先のMySQL5.7にインポートします。
前回までのサーバ移行計画のエントリはこちら
- 【未解決問題】AWSのEC2インスタンスをt1.microからt2.microにしたい話
- 【ハンズオン】AWS上にAsterisk13をインストールして電話してみる
- 【ハンズオン】Amazon Linux2にApache、PHP、MySQLをインストールする
移行元サーバでのDBエクスポート
ここでは「SIPDB」という名前のDBをエクスポートします。
# mysqldump -u root -p SIPDB > SIPDB.dump
パスワードを入力すると作業ディレクトリにSIPDB.dumpが作られました。
ログテーブルは約100万レコードあるのですがサイズは46MBほどです(意外と小さい)
中身を見るとCREATE TABLEしてデータの中身をINSERTするSQLが書かれています。
移行先サーバでのDBインポート
WinSCPなどでdumpファイルを持ってきます。
まずはインポートする前にDBの箱を作っておきます。
mysql> create database SIPDB;
mysql> use SIPDB
mysql> show variables like "chara%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
インポートします。
# mysql -u root -p TEST < SIPDB.dump
パスワードを入力するとインポート完了です。
mysqlにつないで「show tables」でテーブルが作られていること、
「select * from テーブル名」で中身が入っていることを確認します。
さいごに
データベース移行はあっさり終わりました。
ダンプファイルがGB単位になると思ってたので、EBSで新規ボリュームアタッチ→ファイルシステムをフォーマット→マウントとやってたのですがそんな必要なかったです。
この後、さらに以下のことをやりました。
- PHPからMySQLへの接続確認
- EC2インスタンスのElastic IPの付け替え(Classic→VPC)
- sip.confの修正(グローバルIPを指定している部分)
- CloudWatch(CPU&ネットワーク監視)の再設定
相談電話のAndroidアプリから接続することができました!
これで旧世代のt1.microで月3000円ほどかかってたサーバ費用が、t2.nanoで月600円程度に抑えられます!
ただサーバ側の動作がかなりもっさりなのでやっぱ、t2.microくらいにしておいたほうがいいかも。
参考にしたサイト
Author And Source
この問題について(【ハンズオン】MySQL5.0からMySQL5.7にデータベースを移行する), 我々は、より多くの情報をここで見つけました https://qiita.com/hamham/items/fee5dc6fd46938386b76著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .