カテゴリ: データベース 更新日: 2026/03/25

Redis設定ファイル(redis.conf)の基本を完全ガイド!初心者でもわかるデータベース設定

Redisの設定ファイル(redis.conf)の基本を整理
Redisの設定ファイル(redis.conf)の基本を整理

先生と生徒の会話形式で理解しよう

生徒

「Redis(レディス)って、普通のデータベースと何が違うんですか?」

先生

「Redisは、データをパソコンの『メモリ』という一番速い場所に保存するデータベースです。超特急で動くメモ帳のようなものですね。」

生徒

「設定ファイルっていうのが難しそうで……初心者の私でも触れますか?」

先生

「大丈夫です。設定ファイルは、いわば『Redisというロボットへの説明書』です。どこで働くか、いつ休憩するかを決めるだけなので、仕組みを知れば怖くありませんよ。」

1. Redisの設定ファイル「redis.conf」とは?

1. Redisの設定ファイル「redis.conf」とは?
1. Redisの設定ファイル「redis.conf」とは?

データベースの世界で大人気の「Redis(レディス)」。その動きを細かく決める司令塔が「redis.conf(レディス・ドット・コンフ)」というファイルです。

パソコンを触ったことがない方のために例えると、これは「お店の運営マニュアル」のようなものです。「お店は何時に開けるのか」「看板は何色にするのか」「泥棒が入らないように鍵はどうするのか」といったルールを、このファイルに書き込んでいきます。

Redisは「インメモリデータベース」と呼ばれます。通常のデータベースが本棚(ハードディスク)に重い辞書を片付けるのに対し、Redisは机の上(メモリ)にメモを広げておくようなイメージです。そのため、読み書きが驚くほど速いのが特徴です。

運用(ソフトを動かし続けること)において、この設定ファイルを正しく理解することは、トラブルを防ぐための第一歩になります。

エンジニアの必須スキル「SQL」を、 図解と豊富な練習問題でゼロから体系的に学びたい人へ。 MySQLやPostgreSQLなど、各種データベースに対応した不朽の入門書です。

SQL 第2版 ゼロからはじめるデータベース操作をAmazonで見る

※ Amazon広告リンク

2. 設定ファイルの中身を覗いてみよう

2. 設定ファイルの中身を覗いてみよう
2. 設定ファイルの中身を覗いてみよう

設定ファイルは、メモ帳のようなテキストファイルでできています。中には英語でたくさんの指示が書かれていますが、初心者がまず覚えるべきは「ポート番号」や「保存ルール」です。

では、実際にどのようにデータを扱うか、簡単な名簿データの例で見てみましょう。Redisでは「キー(名前)」と「値(中身)」をペアにして保存します。

【実行前のデータ状態】


key          | value (名前)   | age | job
-------------+----------------+-----+-----------
user:1       | 山田太郎       | 25  | 会社員
user:2       | 佐藤花子       | 19  | 学生
user:3       | 鈴木一郎       | 30  | 公務員
user:4       | 田中健二       | 42  | エンジニア

ここで、Redisに新しいデータを追加する命令(SET命令)を出してみます。


SET user:5 "高橋愛"
SET user:5:age 28
SET user:5:job "デザイナー"

【実行後のデータ状態】


key          | value (名前)   | age | job
-------------+----------------+-----+-----------
user:1       | 山田太郎       | 25  | 会社員
user:2       | 佐藤花子       | 19  | 学生
user:3       | 鈴木一郎       | 30  | 公務員
user:4       | 田中健二       | 42  | エンジニア
user:5       | 高橋愛         | 28  | デザイナー

3. 超重要!基本的な設定項目(パラメータ)

3. 超重要!基本的な設定項目(パラメータ)
3. 超重要!基本的な設定項目(パラメータ)

redis.confに書かれている設定項目のことを「パラメータ」と呼びます。ここでは、初心者がまず知っておくべき3つの設定を解説します。

① ネットワーク設定(bind / port)

「bind(バインド)」は、どのパソコンからの接続を許可するかを決めます。「port(ポート)」は、データの入り口となる「ドアの番号」です。通常、Redisは「6379」という番号のドアを使います。

② データの保存(save)

Redisは机の上(メモリ)で作業するので、パソコンの電源が切れるとデータが消えてしまいます。それを防ぐために、定期的に本棚(ファイル)に書き出す設定が「save」です。例えば、「900秒の間に1回でもデータが変わったら保存する」といった指示を出します。

③ パスワード設定(requirepass)

誰でも勝手にデータを見られないように、鍵をかける設定です。「requirepass(リクワイア・パス)」の後に好きな合言葉を書くことで、セキュリティを高めることができます。

次に、データの有効期限を設定する例を見てみましょう。Redisは、一定時間が経つと自動で消える「クーポン」のようなデータを扱うのが得意です。


SET coupon:special "10%割引"
EXPIRE coupon:special 60

この命令は、「特別クーポン」というデータを保存し、60秒後に自動的に消去するという意味です。


key            | value        | 有効期限
---------------+--------------+-----------
coupon:special | 10%割引      | 残り60秒

4. トラブル対応:もしもデータが消えたら?

4. トラブル対応:もしもデータが消えたら?
4. トラブル対応:もしもデータが消えたら?

運用(データベースを動かし続けること)をしていると、「さっき保存したはずのデータがない!」というトラブルが起きることがあります。

その原因の多くは、先ほど説明した「メモリ」と「保存(永続化)」の関係にあります。Redisは非常に速い反面、保存のタイミングを設定し忘れると、急な停電などでデータが消えてしまうのです。

トラブルを防ぐための設定を確認してみましょう。

豆知識:ログファイルを確認しよう
Redisには「日記(ログ)」をつける機能があります。エラーが起きたときは、この日記を読むことで「何時に何が起きたか」を知ることができます。設定ファイルの logfile という項目で、どこに日記を書くかを指定します。

以下のコードは、現在のデータがいくつあるかを確認し、すべてのデータを消去する(トラブル時にやり直す際などに使う)例です。


DBSIZE
FLUSHALL
DBSIZE

【実行結果】


(integer) 5
OK
(integer) 0

「DBSIZE」でデータが5個あることを確認し、「FLUSHALL」で全部消し、再度確認したら0個になった、という流れです。初心者のうちは、この「全部消す」命令を本番環境で使わないように注意しましょう。

5. メモリの使いすぎを防ぐ設定(maxmemory)

5. メモリの使いすぎを防ぐ設定(maxmemory)
5. メモリの使いすぎを防ぐ設定(maxmemory)

Redisは「机の上」で作業すると言いました。しかし、机の広さ(メモリ容量)には限界があります。もしデータが溢れてしまったら、パソコン全体の動きが止まってしまうかもしれません。

そこで役立つのが「maxmemory(マックス・メモリ)」設定です。「これ以上のメモリは使わないでね」という上限を決めることができます。

さらに、上限に達したときに「古いデータから捨てるのか」「新しいデータを拒否するのか」という方針(ポリシー)も決めることができます。これを「maxmemory-policy」と呼びます。

このように、設定ファイルを一つずつ紐解いていくと、Redisがどのようにデータを守り、どのように高速な処理を実現しているのかが見えてきます。プログラミング未経験の方でも、「どこに何を保存するか」というルール作りだと考えれば、決して難しくはありません。

まずは自分のパソコンにRedisを入れて、設定ファイルを少しずつ書き換えて反応を見てみるのが、上達への近道です。

カテゴリの一覧へ
新着記事
New1
Rails
Railsのレイアウトの作り方を完全解説!application.html.erb・yield・content_forの使い方
New2
Ruby
Rubyで乱数を作る方法:rand・Randomクラス・シード設定まで徹底解説
New3
Rails
Railsのレイアウトの作り方を完全解説!application.html.erb・yield・content_forの使い方
New4
Rails
Railsフラグメントキャッシュ完全入門!cache do・エクスパイア戦略・キー設計をやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Ruby
OpenSSL関連エラーの直し方を完全解説!証明書・ビルドオプション・brew対策まとめ
No.2
Java&Spring記事人気No2
Ruby
WindowsでRubyをインストールする方法!RubyInstallerとMSYS2を使った完全ガイド
No.3
Java&Spring記事人気No3
Rails
RailsのCSRF対策を完全解説!authenticity_token・SameSite・APIモードまで初心者向けに理解
No.4
Java&Spring記事人気No4
Rails
メール送信の準備をしよう!SMTPテスト用MailhogとLetter Openerの使い方
No.5
Java&Spring記事人気No5
Ruby
Rubyの後置ifとガード節を完全マスター!1行で書く早期リターンの極意
No.6
Java&Spring記事人気No6
Rails
RailsでXSSを防ぐ完全ガイド|ERB自動エスケープ・sanitize・Content Security Policy設定
No.7
Java&Spring記事人気No7
Ruby
Rubyの代入・多重代入・並行代入を完全解説!初心者でもわかるa, b = 1, 2の使い方
No.8
Java&Spring記事人気No8
データベース
Redisのmaxmemory設定とは?メモリ管理とパフォーマンス向上の秘訣を初心者向けに解説