MySQL > 5.5へアップグレード

更新日 2013-06-30
広告
MySQL 5.1から5.5へアップグレードします。OSはDebian squeezeです。

バックアップ

大事なファイルをバックアップします。 私の場合は、MySQLの設定ファイルやデータです。
$ sudo cp /etc/init.d/mysql /etc/init.d/mysql-5.1 
$ sudo cp -rf /etc/mysql /etc/mysql-5.1
$ sudo cp -rf /var/lib/mysql /var/lib/mysql-5.1
$ mysqldump -u root -p --databases mysql > mysql-5.1-dump.sql
$ mysqldump -u root -p --databases testdb > testdb-5.1-dump.sql

古いバージョンをアンインストール

MySQL 5.1をアンインストールします。 私の場合、apt-getでインストールしていたので、以下のようにアンインストールします。
$ sudo apt-get remove mysql-server-5.1
$ sudo apt-get autoremove

インストール

MySQLをインストールします。事前に、libaio-dev のインストールが必要です。

インストールパッケージは、MySQLのサイトからダウンロードします(Debian wheezyなら、apt-getで直接インストールできると思いますが、squeezeなのでファイルからインストールします)。

$ sudo dpkg -i mysql-5.5.30-debian6.0-x86_64.deb 
5.1と5.5で、インストール先のディレクトリが違います。 上記方法でインストールした場合、/opt/mysql/server-5.5/ にインストールされます。

設定

MySQLのコマンド群は、 /opt/mysql/server-5.5/bin/ にインストールされます。 以下のように、PATHを通しておくと便利です。
export PATH=$PATH:/opt/mysql/server-5.5/bin/
設定ファイルを更新します。
$ sudo cp /opt/mysql/server-5.5/support-files/mysql.server /etc/init.d/mysql
$ sudo cp /opt/mysql/server-5.5/support-files/my-huge.cnf /etc/mysql/my.cnf 
my.cnfに、以下のような設定を追加します(無ければ)。
$ vi /etc/mysql/my.cnf
basedir         = /opt/mysql/server-5.5

socket          = /var/run/mysqld/mysqld.sock

user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
datadir         = /var/lib/mysql
tmpdir          = /tmp
設定が不足している場合、MySQLを起動しようとしても、以下のようなエラーになります。
Couldn't find MySQL server (/usr/bin/mysqld_safe) ... failed!
とか
.The server quit without updating PID file (/opt/mysql/server-5.5/data/testdb.pid). ... failed!
設定に問題なければ、起動できて、データにアクセスできるはず。
$ sudo /etc/init.d/mysql start
広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system