最近のMYSQLのリリースの方法が変わったのか。。。
5.4になるとJOINの処理が早くなると言われていたのでGAリリースを待ち望んでいたが、
MySQL 5.4のサイトへ行くと
5.4.3-betaで止まっている。にもかかわらず、MySQL 5.5がリリースされている。
しかもマイルストーンリリース。

【以下MYSQL5.5のサイトから抜粋】

■This brings me back to where I started the blog entry: the SELECT VERSION() statement,
which doesn’t say “-alpha” nor “-beta” but “-m2″ (where “m2″ stands for “second milestone”).

Getting you faster access to new features is a key idea behind the new milestones.
Milestones don’t map one-to-one on version numbers, so hence the first 5.5 release can be
the second milestone (with the first milestone being in the already community tested
5.4 tree,which won’t get any further updates
).

■Is the MySQL 5.5 quality good enough to merit your testing?
Yes, we think it is. Although MySQL Server 5.5-M2 isn’t production ready, we think it’s
suitable for testing and feedback by you, because we have significantly increased our
internal testing in order to avoid accepting unstable code into the milestone.
A sign of this is that we do have other new code written, i.e. functionality brewing but not
accepted into the milestone because it doesn’t fit our quality requirements at this point
in time.

STEP1) まずは何はともあれダウンロードしてみる

wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.0-m2-linux-i686-icc-glibc23.tar.gz/from/http://ftp.iij.ad.jp/pub/db/mysql/

STEP2) 展開してMYSQLを自分の運用パスに移動
①展開
[root@colinux src]# tar zxvf mysql-5.5.0-m2-linux-i686-icc-glibc23.tar.gz
②移動
[root@colinux src]# mv mysql-5.5.0-m2-linux-i686-icc-glibc23 /usr/local/

STEP3) MYSQLフォルダーのパーミッション設定

[root@colinux local]# chown -R mysql:mysql mysql-5.5.0-m2-linux-i686-icc-glibc23/
[root@colinux local]# chmod -R 755 mysql-5.5.0-m2-linux-i686-icc-glibc23/

mysql_55m

STEP4) 既存のMYSQLのアップグレードを開始(5.1.41-log —> 5.5.0-m2)

①既存のバージョン確認
5141-log

②データコピー前に既存のMYSQLサービスを停止
[root@colinux local]# /etc/init.d/mysql.server stop
Shutting down MySQL. SUCCESS!
[root@colinux local]#

③ データフォルダーをMYSQL5.5用にコピー
[root@colinux local]# cp -rp mysql/data mysql-5.5.0-m2-linux-i686-icc-glibc23/
[root@colinux local]#

④ シンボリックリンクを古いバージョンから新しいバージョンへ切り替え
[root@colinux local]#rm mysql
[root@colinux local]# ln -s mysql-5.5.0-m2-linux-i686-icc-glibc23/ mysql

symbol

※ バージョンに応じてオプションファイル(my.cnf)の変更もすべきだと思いますが、後で調整するのでここでは割愛してます。

⑤ MYSQLのサービスを再開
[root@colinux local]# /etc/init.d/mysql.server start
Starting MySQL…. SUCCESS!
[root@colinux local]#

⑥ MYSQLのシステムテーブルをアップグレード
[root@colinux bin]# pwd
/usr/local/mysql/bin
[root@colinux bin]#./mysql_upgrade -u root -p

mysql55_system

Running ‘mysql_fix_privilege_tables’…OK

STEP5) MYSQLのアップグレード状態を確認

mysql> select @@version;

version55

mysql> show tables from information_schema;
information_schema_55m2

————————————————————————————————————————-


select TABLE_SCHEMA,TABLE_NAME,ENGINE,CREATE_TIME
from information_schema.tables
where TABLE_SCHEMA = 'information_schema'
Order by CREATE_TIME desc;

information_schema_55_created


今週は、連休なのでMSQLのアップグレード
【DOWNLOADサイト】
http://dev.mysql.com/downloads/mysql/5.1.html


Linux (non RPM, Intel C/C++ compiled, glibc-2.3) downloads

MySQL is pleased to make available offerings of the MySQL Community Server compiled with
the Intel CC compiler. Internal tests show that editions of the MySQL Community Server compiled
with the

    Intel CC compiler exhibit faster performance on Intel hardware than those compiled
    with the standard gcc compiler.

mysql-5.1.39-linux-i686-icc-glibc23.tar.gz

1) 最新版のダウンロード

[root@colinux src]# wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.39-linux-i686-icc-glibc23.tar.gz/fro m/http://ftp.iij.ad.jp/pub/db/mysql/
–16:31:31– http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.39-linux-i686-icc-glibc23.tar.gz/from/http://ft p.iij.ad.jp/pub/db/mysql/
=> `index.html’
dev.mysql.com をDNSに問いあわせています… 213.136.52.29
dev.mysql.com|213.136.52.29|:80 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 302 Found
場所: http://ftp.iij.ad.jp/pub/db/mysql/Downloads/MySQL-5.1/mysql-5.1.39-linux-i686-icc-glibc23.tar.gz [続く]
–16:31:33– http://ftp.iij.ad.jp/pub/db/mysql/Downloads/MySQL-5.1/mysql-5.1.39-linux-i686-icc-glibc23.tar.gz
=> `mysql-5.1.39-linux-i686-icc-glibc23.tar.gz’
ftp.iij.ad.jp をDNSに問いあわせています… 202.232.140.138, 202.232.140.139, 202.232.140.135, …
ftp.iij.ad.jp|202.232.140.138|:80 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 200 OK
長さ: 123,343,402 (118M) [application/x-gzip]

100%[========================================================================>] 123,343,402 1.97M/s ETA 00:00

16:32:18 (2.63 MB/s) – `mysql-5.1.39-linux-i686-icc-glibc23.tar.gz’ を保存しました [123343402/123343402]

2) 解凍してパッケージの展開

[root@colinux src]# tar zxvf mysql-5.1.39-linux-i686-icc-glibc23.tar.gz

tarzxvf

3) 展開したパッケージを配置したい場所に設置。ここでは /usr/local/に配置してます。
※ 展開した場所に移動して、既存のMYSQLサーバーの停止。
※ 別にインストールする場合はポートを変えるので停止しなくてOK。Port:3307など

[root@colinux src]# mv mysql-5.1.39-linux-i686-icc-glibc23 /usr/local/
[root@colinux src]#

mysql_stop

4) 必要に応じて、既存データフォルダーのコピーとシンボリックリンクの張りなおし。

[root@colinux local]# cp -rp mysql/data mysql-5.1.39-linux-i686-icc-glibc23/
[root@colinux local]# rm mysql
[root@colinux local]# ln -s mysql-5.1.39-linux-i686-icc-glibc23 mysql
[root@colinux local]# ls -l

mysql_symbolic

5) mysqlユーザーで動かすのでフォルダーのオーナーをmysqlに変更する。

[root@colinux local]# chown -R mysql:mysql mysql-5.1.39-linux-i686-icc-glibc23/
[root@colinux local]#

6) mysqlサービスの開始とアップグレードスクリプトの実行

[root@colinux local]# /etc/init.d/mysql.server start
Starting MySQL…. SUCCESS!
[root@colinux local]#

[root@colinux bin]# pwd
/usr/local/mysql/bin
[root@colinux bin]# ./mysql_upgrade -u root -p
Enter password:
Looking for ‘mysql’ as: ./mysql
Looking for ‘mysqlcheck’ as: ./mysqlcheck
Running ‘mysqlcheck’ with connection arguments: ‘–port=3306’ ‘–socket=/tmp/mysql.sock’

upgrade_script

[root@colinux data]# pwd
/usr/local/mysql/data
[root@colinux data]# cat mysql_upgrade_info
5.1.39
[root@colinux data]#

7) エラーログの確認と動作確認をして終了

[root@colinux data]# cat colinux.err
091010 16:45:25 [Note] Event Scheduler: Purging the queue. 0 events
091010 16:45:25 InnoDB: Starting shutdown…
091010 16:45:26 InnoDB: Shutdown completed; log sequence number 0 538187
091010 16:45:26 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete

091010 16:45:26 mysqld_safe mysqld from pid file /usr/local/mysql/data/colinux.pid ended
091010 17:02:01 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
091010 17:02:02 [Warning] option ‘thread_stack’: unsigned value 65536 adjusted to 131072
091010 17:02:02 [Note] Plugin ‘FEDERATED’ is disabled.
091010 17:02:04 InnoDB: Started; log sequence number 0 538187
091010 17:02:04 [Note] Event Scheduler: Loaded 0 events
091010 17:02:04 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: ‘5.1.39-log’ socket: ‘/tmp/mysql.sock’ port: 3306 MySQL Community Server (GPL)

finish_up


mysql> select @@version;
+------------+
| @@version |
+------------+
| 5.1.39-log |
+------------+
1 row in set (0.00 sec)

mysql>