Redisサーバーの起動・停止・再起動・状態確認
Redisサーバーの起動・停止・再起動・状態確認について解説します。
Redisの状態確認
Redisの状態確認は、systemctlコマンドの「status」を使って行います。
sudo systemctl status redis-server
起動している場合
起動している場合は、以下のように表示されます。
● redis-server.service - Advanced key-value store Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2020-06-16 10:12:56 JST; 3h 57min ago Docs: http://redis.io/documentation, man:redis-server(1) Main PID: 108380 (r.edis-server) Tasks: 4 (limit: 9479) CGroup: /system.slice/redis-server.service mq108380 /usr/bin/redis-server 127.0.0.1:6379
停止している場合
停止している場合は、以下のように表示されます。
● redis-server.service - Advanced key-value store Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled) Active: inactive (dead) since Tue 2020-06-16 14:11:18 JST; 2s ago Docs: http://redis.io/documentation, man:redis-server(1) Process: 27892 ExecStop=/bin/kill -s TERM $MAINPID (code=exited, status=0/SUCCESS) Main PID: 108380 (code=exited, status=0/SUCCESS)
Redisの起動
Redisの起動は、systemctlコマンドの「start」を使って行います。sudoコマンドを使って、root権限で実行します。
sudo systemctl start redis-server
起動が成功しても、成功したというメッセージは返ってきません。状態確認を行ってください。
Redisの停止
Redisの停止は、systemctlコマンドの「stop」を使って行います。sudoコマンドを使って、root権限で実行します。
sudo systemctl stop redis-server
停止が成功しても、成功したというメッセージは何も返ってきません。状態確認を行ってください。
Redisの再起動
Redisの再起動は、systemctlコマンドの「restart」を使って行います。sudoコマンドを使って、root権限で実行します。
sudo systemctl restart redis-server
restartは単に、stopコマンドを実行して、startコマンドを実行します。
Redisの起動・停止のログを見るには
Redisなどのサーバーは、systemdというプログラムによって集中的に管理されています。
systemdのログにRedisの起動・停止ログが出力されています。
systemdのログを見るにはjournalctlコマンドを使います。「-u」オプションでユニット「redis-server」を指定します。sudoで実行しないとRedisサーバーのログが見れないので注意してください。ログの最後の部分だけ見たい場合は「-r」オプションを組み合わせます。
sudo journalctl -r -u redis-server
ログのサンプルです。
Jul 22 13:24:34 shinshina-development-app-00000001 systemd[1]: Started Advanced key-value store. Jul 22 13:24:34 shinshina-development-app-00000001 systemd[1]: redis-server.service: Can't open PID file /var/run/redis/redis-server.pid (yet?) after start: No such file or directory Jul 22 13:24:33 shinshina-development-app-00000001 systemd[1]: Starting Advanced key-value store... -- Reboot -- Jul 22 13:13:48 shinshina-development-app-00000001 systemd[1]: Stopped Advanced key-value store. Jul 22 13:13:47 shinshina-development-app-00000001 systemd[1]: Stopping Advanced key-value store...
Redisのsystemdの設定ファイルを見るには
Redisのsystemdの設定ファイルは「systemctl status redis-server」で見れます。
設定ファイルをcatコマンドで見てみましょう。
cat /lib/systemd/system/redis-server.service
Redisトラブルシューティング
以下のようなエラーでRedisサーバーが起動できない場合があります。
redis-server.service: Can't open PID file /var/run/redis/redis-server.pid (yet?) after start: No such file or directory
これは、サーバーのネットワーク設定でIPv6が有効になっておらず、Redisサーバーの設定ファイルで、IPv6が有効になっている場合に出るエラーです。
Redis設定ファイルを編集して修正しましょう。間違った場合のためにバックアップもとっておきます。
sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak sudo vi /etc/redis/redis.conf
以下を
bind 127.0.0.1 ::1
以下に変更
bind 127.0.0.1
Redisの起動と確認
Redisの起動と確認を行います。
sudo systemctl start redis-server sudo systemctl status redis-server