さくらの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