LoginSignup
8
8

More than 5 years have passed since last update.

[CentOS7]PHPとMySQLをアップデートする

Last updated at Posted at 2018-12-24

はじめに

前回の記事ではWebminを設置した。
CentOSはセットアップの際にアップデートしていたが、PHPとMySQLは最新のものにアップデートしていなかった。
せっかくなので、最初から最新のものを入れておきたい。

環境は以下の通り

  • さくらVPS
  • スタートアップスクリプト「CentOS_LAMP」を使用
  • CentOS 7.6.1810
  • Apache 2.4.6

アップデートするのは以下の二つ

  • PHP 5.4.16 -> PHP 7.3.0
  • MariaDB 5.5.60 -> MariaDB 10.3

PHPのアップデート

最新のバージョンを確認
http://php.net/downloads.php
最新はPHP7.3.0

現在インストール済みのPHPをチェックする

# rpm -qa | grep php
php-mysql-5.4.16-46.el7.x86_64
php-process-5.4.16-46.el7.x86_64
php-xml-5.4.16-46.el7.x86_64
php-gd-5.4.16-46.el7.x86_64
php-cli-5.4.16-46.el7.x86_64
php-mbstring-5.4.16-46.el7.x86_64
php-common-5.4.16-46.el7.x86_64
php-devel-5.4.16-46.el7.x86_64
php-pdo-5.4.16-46.el7.x86_64
php-pear-1.9.4-21.el7.noarch

後で同じ拡張モジュールを入れようと思うので、とりあえずインストール済みのものをメモしておく。

古いPHPの削除

削除しなくてもいいらしいけど、他のサイトを見るとみんな削除してるっぽいので、PHP5関連のものは全部削除する。

# yum remove php-*
 :
省略
 :
Complete!

削除されたかどうかの確認

# php -v
bash: php: command not found

PHP7のインストール

Remiリポジトリを使ってインストールする
Remiの公式サイトにダウンロードのリンクがある。

remi.JPG

リンクを確認して、
以下のコマンドでインストール

# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

そもそもRemiがよくわからなかったんですが、僕はこのサイトで何となく理解できました。
参考:Linuxのパッケージ管理についての用語を理解する

ちゃんとインストールされたかどうか確認する。

# ls -l /etc/yum.repos.d
total 80
 :
省略
 :
-rw-r--r--. 1 root root  951 Oct  3  2017 epel.repo
-rw-r--r--  1 root root  446 Jun 19 17:28 remi-glpi91.repo
-rw-r--r--  1 root root  446 Jun 19 17:28 remi-glpi92.repo
-rw-r--r--  1 root root  446 Jun 19 17:28 remi-glpi93.repo
-rw-r--r--  1 root root  456 Jun 19 17:28 remi-php54.repo
-rw-r--r--  1 root root 1314 Jun 19 17:28 remi-php70.repo
-rw-r--r--  1 root root 1314 Jun 19 17:28 remi-php71.repo
-rw-r--r--  1 root root 1314 Jun 19 17:28 remi-php72.repo
-rw-r--r--  1 root root 1314 Jun 19 17:28 remi-php73.repo
-rw-r--r--  1 root root  750 Jun 19 17:28 remi-safe.repo
-rw-r--r--  1 root root 2605 Jun 19 17:28 remi.repo

remi-*が追加されていることを確認。

いよいよPHP7のインストール
使用するのは最新のremi-php73
以下のコマンドでインストールする。

yum install --enablerepo=remi,remi-php73 php以降の部分には、先ほどメモした元々入っていた拡張モジュールを全部追加。

# yum install --enablerepo=remi,remi-php73 php php-mysql php-process php-xml php-gd php-cli php-mbstring php-common php-devel php-pdo php-pear
 :
省略
 :
Complete!

インストールされたかを確認する。

# php -v
PHP 7.3.0 (cli) (built: Dec  4 2018 16:12:20) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies

# rpm -qa | grep php
php-cli-7.3.0-1.el7.remi.x86_64
php-pear-1.10.7-1.el7.remi.noarch
php-common-7.3.0-1.el7.remi.x86_64
php-fedora-autoloader-1.0.0-1.el7.remi.noarch
php-devel-7.3.0-1.el7.remi.x86_64
php-json-7.3.0-1.el7.remi.x86_64
php-pdo-7.3.0-1.el7.remi.x86_64
php-gd-7.3.0-1.el7.remi.x86_64
php-7.3.0-1.el7.remi.x86_64
php-xml-7.3.0-1.el7.remi.x86_64
php-mbstring-7.3.0-1.el7.remi.x86_64
php-process-7.3.0-1.el7.remi.x86_64
php-mysqlnd-7.3.0-1.el7.remi.x86_64

無事、PHP7.3.0になりました。

MariaDBのアップデート

続いてMariaDBのアップデートをします。
MariaDB 5.5.60MariaDB 10.3にアップデート

まずは現在のバージョンを確認する

# mysql --version
mysql  Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1

yumリポジトリの作成

追記:コメントでもっと簡単な方法を教えていただきました。こっちをぜひ試してみてください。

MariaDBのリポジトリを新規に作成します。
MariaDBの公式にリポジトリのジェネレーターがある。

リポジトリジェネレーター:https://downloads.mariadb.org/mariadb/repositories/

CentOS > CentOS7(x86_64) > 10.3[Stable]の順に選択していくとリポジトリの中身が生成される。

mariadb.JPG

これをコピペして使う

設置する場所は/etc/yum.repos.d/
/etc/yum.repos.d/に移動して、MariaDB.repoというファイルを新規作成

# cd /etc/yum.repos.d/
# vi MariaDB.repo

さっきのリポジトリジェネレーターの内容をコピペする。

/etc/yum.repos.d/MariaDB.repo
# MariaDB 10.3 CentOS repository list - created 2018-12-24 01:31 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

追記 2018/12/28

コメントでもっと簡単な方法を教えていただきました。
以下のコマンドだけでyumリポジトリの設定ができてしまうそうです。
詳細はこちら

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

私はこの方法を試していませんが、とても簡単そうなのでぜひ試してみてください。

アップデート

今回は、MariaDB 5.5MariaDB 10.3にアップデートする作業なので、
一旦MariaDBを停止してアップデートコマンドをたたく。

まずは停止してから、止まっていることを確認。

# systemctl stop mariadb
# systemctl status mariadb
 :
省略
 :
   Active: inactive (dead) since 
 :
省略
 :

Active: inactive (dead)になっていることを確認。
確認できたら以下のコマンドでアップデートする。

# yum update MariaDB-server MariaDB-client
 :
省略
 :
Complete!

バージョン確認

バージョンを確認する

# mysql --version
mysql  Ver 15.1 Distrib 10.3.11-MariaDB, for Linux (x86_64) using readline 5.1

無事にバージョンアップができました。

まとめ

結局この作業をするのなら、さくらVPSのスタートアップスクリプト「CentOS_LAMP」でインストールする必要はないのかなぁ…なんてことが脳裏をよぎってしまった。

次回はComposerを入れてPHPフレームワークのCodeigniterを導入する予定です。

8
8
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8