Amazon Linux 2:RedisインストールおよびPHPとの連携方法

Amazon Linux 2のEC2環境に、インメモリ型のKVS(キーバリューストア)かつ高速な非リレーショナルデータベース(NoSQL)である Redis(レディース)をインストールして、PHPのセッションハンドラをRedisに切り替えます。(2018/12/30作成)

Store MichaelGaida / Pixabay

Redisとは

Redisは、データ構造サーバーを実装するオープンソースソフトウェアプロジェクトである。いわゆるNoSQLデータベースの一つであり、Redis Labsがスポンサーとなって開発されている。ネットワーク接続されたインメモリデータベースでかつキー・バリュー型データベースであり、オプションとして永続性を持つ。 (出典: ウィキペディア)

0)環境

$ php -v
PHP 7.2.11 (cli) (built: Oct 24 2018 17:51:11) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.11, Copyright (c) 1999-2018, by Zend Technologies

1)Redisインストール

Amazon Linux 2は、amazon-linux-extrasコマンドでRedisをインストールできる。

$ sudo amazon-linux-extras install redis4.0

2)Redisの自動起動設定と起動

$ sudo systemctl status redis.service
$ sudo systemctl start redis.service
$ sudo systemctl enable redis.service
$ sudo systemctl is-enabled redis.service

3)プロセスの起動確認

$ ps -ef | grep redis | grep -v grep
redis     8529     1  0 10:51 ?        00:00:00 /usr/bin/redis-server 127.0.0.1:6379

4)Redis 動作確認

$ redis-cli -v
redis-cli 4.0.10

$ redis-cli ping
PONG

5)redis-cli で実験

$ redis-cli
127.0.0.1:6379> set key value
OK
127.0.0.1:6379> get key
"value"

6)php-pecl-redisのインストール

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ sudo yum install --enablerepo=epel php-pecl-redis

7)Redisのiniファイル設定

$ sudo vi /etc/php.d/50-redis.ini
session.save_handler = redis
session.save_path = "tcp://localhost:6379"

以上

About yoshimasa

埼玉県さいたま市在住、2男3女のパパです。Linux系の技術情報を中心にまとめています。1978年2月生まれ。