CentOS6.2(32bit)にrpmでMySQL5.5.3以降(5.6.5)のバージョンをインストールするのに悪戦苦闘したメモ。

5.5.3以降が使いたいのは、文字コードutf8mb4(4バイトUTF8文字=iOS5以降の絵文字)が使いたい為。
yumでは、epel,remiリポジトリでも5.5.24までしかなくて、utf8mbが使えなかった。

嘘。5.5.24で、my.cnfのcharacter-set-serverをutf8mb4にして起動出来た。
どうやら5.5.24のテストをしていた時はutf8mbとタイプミスしていた模様。


パッケージを指定してインストール。

rpm -ivh http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-server-5.6.5_m8-1.linux2.6.i386.rpm/from/http://ftp.iij.ad.jp/pub/db/mysql/

パッケージの在り処は、MySQL :: Download MySQL Community Server
Development Releases > Select Platform > Linux - Generic と選んで、
Linux - Generic 2.6 (x86, 32-bit), RPM Package
MySQL Server
これのDownloadを選ぶとミラーサイトに飛ぶ。
ユーザ登録すべしみたいなのが出るけど、下の
» No thanks, just take me to the downloads!
を選択するとミラー一覧が出てくる。
↑のURLはそこのリンクのうちひとつをコピペしたもの。

エラーが出た。

エラー: 依存性の欠如:
libaio.so.1 は MySQL-server-5.6.5_m8-1.linux2.6.i386 に必要とされています
libaio.so.1(LIBAIO_0.1) は MySQL-server-5.6.5_m8-1.linux2.6.i386 に必要とされています
libaio.so.1(LIBAIO_0.4) は MySQL-server-5.6.5_m8-1.linux2.6.i386 に必要とされています

のでインストール。

yum -y install libaio

以下の様な大量のエラーが。

 ファイル /usr/share/mysql/charsets/README (パッケージ MySQL-server-5.6.5_m8-1.linux2.6.i386 から) は、パッケージ mysql-libs-5.1.52-1.el6_0.1.i686 からのファイルと競合しています。
ファイル /usr/share/mysql/charsets/Index.xml (パッケージ MySQL-server-5.6.5_m8-1.linux2.6.i386 から) は、パッケージ mysql-libs-5.1.52-1.el6_0.1.i686 からのファイルと競合しています。
ファイル /usr/share/mysql/charsets/armscii8.xml (パッケージ MySQL-server-5.6.5_m8-1.linux2.6.i386 から) は、パッケージ mysql-libs-5.1.52-1.el6_0.1.i686 からのファイルと競合しています。
...

↓を参考に、競合するmysql-libsを削除。
Scientific LinuxにMySQL5.5をインストール - cyber_snufkinの日記

rpm -qa|grep mysql

mysql-libs-5.1.52-1.el6_0.1.i686

yum remove mysql-libs

yumで入れた時と違ってmy.cnfが無かったので、↓とyumでインストールした時のmy.cnfを参考に作成。
MySQL :: MySQL 5.6 リファレンスマニュアル :: 2.10.1.2 MySQL を自動的に起動および停止する

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
port=3306
character-set-server=utf8mb4

[mysqld_safe]
log-error=/var/log/mysqld.log

[mysql.server]
# basedir= What's this?

basedirが良くわからないので指定なし。

yumで入れた時はmysqldだったが、今回はmysqlで/etc/init.dに起動スクリプトがインストールされていた。

service mysql start

起動成功!!

mysql_secure_installation

Can't find a 'mysql' client in PATH or ./bin
クライアント入ってねーのかyp…

インストール

rpm -ivh http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-client-5.6.5_m8-1.linux2.6.i386.rpm/from/http://ftp.jaist.ac.jp/pub/mysql/

パッケージは
Linux - Generic 2.6 (x86, 32-bit), RPM Package
Client Utilities

もう一度。

mysql_secure_installation

...
All done! If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

成功!

mysql -uroot -p

接続完了!!

後はphpとかはyumで入れたものでも動くのかとか、iOSから接続して実際に絵文字を保存して取り出せるのかとか…試さないと。