もともと yum の mysql 5.x(忘れた..) が入ってたのを mysql 5.6.14 にアップデート

なんだか僕の場合は .mysql_secret が作成されなかったので、途中で無理やりパスワード変更してます。

.mysql_secret が作成されなかった理由は?なので、何か変なかたちでインストールされてるかもしれません!むむっ!

でも、ソースから入れるより楽ちんになったんですね。

# データベースをバックアップ

mysqldump -u root -p -x --all-databases > ~/mysql_update/alldb.sql

mysqldump -u root -p hogedb > ~/mysql_update/hogedb.sql

# httpd を止める

/etc/init.d/httpd stop

# mysqld を止める

/etc/init.d/mysqld stop

# yummysql を remove

yum remove mysql

〜〜〜〜ここまでが下準備〜〜〜〜

# rpm でインストール(参考:http://blog.manabusakai.com/centos-mysql56-install/

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-5.6.14-1.el6.x86_64.rpm-bundle.tar/from/http://cdn.mysql.com/

tar xvf MySQL-5.6.14-1.el6.x86_64.rpm-bundle.tar

yum install MySQL-{client,devel,server,shared-compat}-5.6.14-1.el6.x86_64.rpm

yum install MySQL-shared-5.6.14-1.el6.x86_64.rpm

# /root/.mysql_secret が作成されなかったので無理やりパスワード変更

/etc/init.d/mysql start --skip-grant-tables

mysql -u root -p

use mysql;

UPDATE user SET Password = password('**********') where user = 'root' and host 'localhost';

FLUSH PRIVILEGES;

# 空パスワードでログインできてしまったので該当userを削除

mysqlにログインして

delete from user where password = '';

とか

# mysql 再起動

/etc/init.d/mysql restart

service mysql stop

service mysql start

ついでに今回 yum で新しい rpm をインストールしたわけなので、yum list installed | grep MySQL とかやるとインストールした rpm が表示され、それらを remove することもできます。あともどりできる方法も一応おぼえておきたいのでメモしておきます。