CONFIG SET コマンドはRedisの再起動無しに実行時にサーバを再設定するために使われます。このコマンドを使って、些細なパラメータを変更あるいは一貫性オプションの切り替えの両方を行うことができます。
CONFIG SETでサポートされる設定パラメータのリストは、CONFIG GET *
コマンドを発行することで取得することができます。これは実行中のRedisインスタンスの設定の情報を取得するために使われる対称的なコマンドです。
全ての設定パラメータはCONFIG SET を使って即座にRedisによってロードされ、次のコマンドの実行から有効になります。
全てのサポートされるパラメータはredis.confファイル内で使われる等価な設定パラメータと同じ意味を持ちますが、以下の重要な違いがあります:
- オプションの中では、バイト数または他の数量が指定される場合、
redis.conf
の省略形 (10k
,2gb
... など)を使うことができません。全ては設定ディレクティブの基本単位での正しい形式の64ビット整数として指定されなければなりません。ただし、Redis バージョン 3.0 以降では、maxmemory
、クライアントの出力バッファ、レプリケーション バックログ サイズのメモリ単位にCONFIG SETを使用することができます。 - save パラメータは空白区切りの整数の単一の文字列です。整数の各ペアは 秒数/変更数 閾値を表します。
例えば、redis.conf
は次のようになります:
save 900 1
save 300 10
データセットに少なくとも1つの変更がある場合は900秒後、データセットに少なくとも10の変更がある場合は300秒後に保存すると、CONFIG SET SAVE "900 1 300 10"
を使って設定されなければならないことを意味します。
RDBスナップショットから追加のみのファイルへ(およびその逆)CONFIG SET コマンドを使って永続性を切り替えることができます。その方法の詳細については、永続性のページを確認してください。
一般的に知っておくべきことは、appendonly
パラメータを yes
に設定すると、初期の追加のみファイル(メモリ内のデータセットから取得されます)を保存するためにバックグラウンド プロセスを開始し、後続の全てのコマンドが追加のみファイルに追加され、従って最初からAOFで起動したRedisサーバとまったく同じ効果が得られるということです。
必要に応じてRDBスナップショットとAOFの両方を有効にすることができます。2つのオプションは相互に排他的ではありません。
*返り値
Simple string reply: 設定が適切に設定された場合はOK
。そうでなければエラーが返されます。