さくらのVPSのPHP+MySQLを最新のものにアップデート。
さくらのVPSではyumをインストールしてPHPを入れることができますが、標準のリポジトリ(パッケージDB)だとPHP5.1.6という古いバージョンが入ってしまいます。
そこで最新バージョンが入るように変えてみましょう。
同様にMySQLも最新版にしてみます。
リポジトリ(パッケージデータベース)を「Remi」に変更
「Remi」っていうのは、フランスにいらっしゃる、最新のLinuxアプリパッケージを管理しているお方で(頭が下がります)、Remiさんが管理しているリポジトリ(Remiリポジトリ)を使うと、最新のパッケージをyumでインストールできたりするのです。
yumコマンドではリポジトリを元にパッケージを選んでインストールします。
PHPの最新版もRemiさんのおかげでインストールできるわけです。 ありがたや~。
拡張リポジトリ「EPEL」をまずダウンロード&インストール
Remiリポジトリを使う前にリポジトリを拡張してくれる「EPEL」リポジトリというのをまずダウンロード&インストールします。 これは以下のコマンドですぐに入ります。
#rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
これで「/etc/yum.reops.d」に「epel.repo」「epel-testing.repo」という2つのリポジトリファイルが追加されます。
Remiパッケージ用のGPGキーをインストール
Remiパッケージは第3者が作ったパッケージアプリ群なので、システムにインストールしても良いという許可を与える目的で、Remiさんが公開している公開鍵(GPGキー)を事前にシステムにインストールしておきます。
# rpm -import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
Remiリポジトリファイルをダウンロード
そして 「/etc/yum.repos.d」ディレクトリに移動して、Remiファイルをwgetコマンドでダウンロードします。
# cd /etc/yum.repos.d # wget http://rpms.famillecollet.com/remi-enterprise.repo
これで準備はできました。
PHPをインストール(アップグレード)
PHPがインストールされていないクリーンなシステムであれば以下のコマンドでOKなのですが、
# yum --enablerepo=remi install php
すでにシステムにPHPやMySQLをインストールしてしまっている場合はアップデートという形になるので、以下のコマンドになります。
# yum --enablerepo=remi update php* mysql*
実行すると、以下のように依存関係と、アップデートファイルの所属先がリストで表示されます。 見やすいですね。
Dependencies Resolved ====================================================================================================================================== Package Arch Version Repository Size ====================================================================================================================================== Updating: mysql x86_64 5.5.17-1.el5.remi remi 7.4 M mysql-server x86_64 5.5.17-1.el5.remi remi 13 M php x86_64 5.3.8-5.el5.remi remi 2.8 M php-cli x86_64 5.3.8-5.el5.remi remi 2.6 M php-common x86_64 5.3.8-5.el5.remi remi 991 k php-devel x86_64 5.3.8-5.el5.remi remi 1.3 M php-gd x86_64 5.3.8-5.el5.remi remi 209 k php-mbstring x86_64 5.3.8-5.el5.remi remi 2.3 M php-mcrypt x86_64 5.3.8-5.el5.remi remi 48 k php-mysql x86_64 5.3.8-5.el5.remi remi 95 k php-pdo x86_64 5.3.8-5.el5.remi remi 119 k php-pear noarch 1:1.9.4-3.el5.remi remi 436 k php-xml x86_64 5.3.8-5.el5.remi remi 223 k Installing for dependencies: libedit x86_64 2.11-2.20080712cvs.el5 epel 80 k libtool-ltdl x86_64 1.5.22-7.el5_4 base 38 k mysql-libs x86_64 5.5.17-1.el5.remi remi 1.1 M mysqlclient15 x86_64 5.0.67-1.el5.remi remi 1.3 M t1lib x86_64 5.1.1-7.el5 epel 208 k Transaction Summary ====================================================================================================================================== Install 5 Package(s) Upgrade 13 Package(s) Total size: 34 M Total download size: 21 M
このあと同意を示す「y」キーを押してエンターキーを押すとアップデートが始まります。
アップデートが完了したら、ApacheとMySQLを再起動することを忘れずにね!
# /etc/init.d/httpd restart # /etc/init.d/mysqld restart
MySQLの起動に失敗する場合は、「/etc/my.cnf」を開いて「[mysql]のセクションに「default-character-set」が記述されていないか確認してください。 この設定はMySQL5.5では無効になっています。 代わりに「character-set-server」を使うようにしましょう。 エラーログ(/var/log/mysqld.log)には「mysql_upgrade」コマンドを試してみるように書かれてたりしますが、エラーは直りません。
2011-10-30