Database JUNKY

MySQL,MariaDBを中心としたブログです

MySQL 5.5 を 5.6にアップグレードする(CENTOS 5 RPM)

仕事が忙しくて中々書けなかった・・・ご存知かと思いますが、MySQLの5.6が正式リリースされました。いままで「これがあったら良いのに・・」という機能がてんこ盛りなので、さっそく自分の環境に入れてみようとと思いまして・・・ってよく考えてみたら、MySQLを5.5から5.6のアップデートってやったことなかった、基本的に入れなおしだったし、てなわけで、MySQLのアップデートってどうやるのかをまとめてみました。機能とかの話はここでは書きません。(今度書きます)

 

  • 既存の環境を調べる たしか、MySQLは、5.5だったはずってことで、やっぱり5.5だったので・・ [shell] [root@sqdbm01 share]# rpm -qa | grep -i ^MySQL- MySQL-shared-5.5.16-1.rhel5 MySQL-devel-5.5.16-1.rhel5 MySQL-client-5.5.16-1.rhel5 MySQL-server-5.5.16-1.rhel5 MySQL-embedded-5.5.16-1.rhel5 MySQL-shared-compat-5.5.16-1.rhel5 [/shell]
  • MySQL5.6のRPMパッケージを用意する まあ、これは用意するだけ、なんだかよくわからないので、いつも私は、全部用意しておきます。 [shell] [root@sqdbm01 x86_64]# ll 合計 300768 -rw-r--r-- 1 root root 22900977 2月 9 01:09 MySQL-client-5.6.10-1.rhel5.x86_64.rpm -rw-r--r-- 1 root root 4548037 2月 9 01:08 MySQL-devel-5.6.10-1.rhel5.x86_64.rpm -rw-r--r-- 1 root root 112042992 2月 9 01:10 MySQL-embedded-5.6.10-1.rhel5.x86_64.rpm -rw-r--r-- 1 root root 88351680 2月 9 01:10 MySQL-server-5.6.10-1.rhel5.x86_64.rpm -rw-r--r-- 1 root root 2384798 2月 9 01:09 MySQL-shared-5.6.10-1.rhel5.x86_64.rpm -rw-r--r-- 1 root root 5104563 2月 9 01:09 MySQL-shared-compat-5.6.10-1.rhel5.x86_64.rpm -rw-r--r-- 1 root root 72290160 2月 9 01:10 MySQL-test-5.6.10-1.rhel5.x86_64.rpm [/shell]
  • 対象のDBをバックアップ 一応、なにがあるかわからないので、データはバックアップしておきましょう?こちらの環境では、rpmデフォルトの、/var/lib/mysqlが全てなので、OSレベルでコピーしておきます。いや・・きっと使うことはないはずなのですが、念のためってやつです。 [shell] [root@sqdbm01 x86_64]# /etc/init.d/mysql stop Shutting down MySQL... [ OK ] [root@sqdbm01 x86_64]# cd /var/lib [root@sqdbm01 lib]# cp -arpf mysql/ mysql_55_bak/ [/shell]
  • 既存のMySQLをアンインストール 依存関係がありますので、順番どおり消さないといけないかもしれません。 [shell]

     for x in rpm -qa | grep MySQL | sed s/-1.rhel5//; do rpm -e ${x} ; done

    rpm -e MySQL-devel-5.5.28 rpm -e MySQL-shared-5.5.28 rpm -e MySQL-server-5.5.28 rpm -e MySQL-embedded-5.5.28 rpm -e MySQL-test-5.5.28 rpm -e MySQL-shared-compat-5.5.28 rpm -e MySQL-client-5.5.28 [/shell]

  • MySQL 5.6をインストール こちらは簡単です。任意のrpm群をまとめたディレクトリに移動し、以下のコマンドを実行するだけ [shell] [root@sqdbm01 x86_64]# cd /share/MySQL/5.6/x86_64 [root@sqdbm01 x86_64]# rpm -ivh MySQL-* 準備中... ########################################### [100%] 1:MySQL-client ########################################### [ 14%] 2:MySQL-devel ########################################### [ 29%] 3:MySQL-embedded ########################################### [ 43%] 4:MySQL-server ########################################### [ 57%] 5:MySQL-shared ########################################### [ 71%] 6:MySQL-shared-compat ########################################### [ 86%] 7:MySQL-test ########################################### [100%] [/shell]
  • 起動 データ領域および、my.cnfが消されたわけではないので、あとは、サービスを起動すれば問題ないはずです。 [shell] [root@sqdbm01 x86_64]# /etc/init.d/mysql start Starting MySQL........ [ OK ] [/shell]

以上、そんなところです・・・といいたいところですが。再度にもうひとつコマンドを発行しておいてください。 * MySQLのアップグレードコマンドを実行 [shell] [root@sqdbm01 x86_64]# mysql_upgrade -p [/shell]

  • バージョンアップされているか確認 うまくバージョンアップされているみたいです。ちなみに、このサイトのMySQLがバージョンアップされたそれなので、基本的に問題ないってことですね。(^_^) [shell] mysql> select @@version;

select @@version

+------------+ | @@version | +------------+ | 5.6.10-log | +------------+ 1 row in set (0.00 sec) [/shell]