Redisをwindowsにインストールをした際にエラーで起動しない時の対処方法

Redisをwindowsにインストールをした際になぜかサービスが立ち上がらない事象が発生しました。
インストールすると自動で立ち上がるはずなのに。。

環境は、
・windows 7
・Redis 2.8
です。

インストール方法は下記を参考にしました。
RedisをWindowsにインストール

エラーを確認

下記のように手動で実行するとエラーが発生していました。

cd [REDIS_DIR]
redis-server.exe

[20356] 07 Oct 17:53:17.434 #
The Windows version of Redis allocates a memory mapped heap for sharing with
the forked process used for persistence operations. In order to share this
memory, Windows allocates from the system paging file a portion equal to the
size of the Redis heap. At this time there is insufficient contiguous free
space available in the system paging file for this operation (Windows error
0x5AF). To work around this you may either increase the size of the system
paging file, or decrease the size of the Redis heap with the --maxheap flag.
Sometimes a reboot will defragment the system paging file sufficiently for
this operation to complete successfully.

Please see the documentation included with the binary distributions for more
details on the --maxheap flag.

Redis can not continue. Exiting.

対処方法

エラーの内容を見るとヒープのメモリサイズが云々と。
とりあえずエラーの内容でぐぐってみると、stackoverflowに答えがありました。
Redis server can’t run more than 1024M maxheap

maxheapとheapdirを指定してあげると動くようになるとのことなので「redis.windows.conf」に下記の記述を追加。
※ メモリサイズは記載の通りですが各自の環境に応じて変更してもよいと思います。
※ 事前にheapdirのディレクトリは作成しておく。

maxheap 2048M
heapdir C:\\redisheap

で、起動時にconfファイルを指定すればOK

redis-server.exe redis.windows.conf

                _._
           _.-``__ ''-._
      _.-``    `.  `_.  ''-._           Redis 2.8.2402 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._
 (    '      ,       .-`  | `,    )     Running in stand alone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 18816
  `-._    `-._  `-./  _.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |           http://redis.io
  `-._    `-._`-.__.-'_.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |
  `-._    `-._`-.__.-'_.-'    _.-'
      `-._    `-.__.-'    _.-'
          `-._        _.-'
              `-.__.-'

[18816] 07 Oct 18:06:45.534 # Server started, Redis version 2.8.2402
[18816] 07 Oct 18:06:45.535 * DB loaded from disk: 0.000 seconds
[18816] 07 Oct 18:06:45.542 * The server is now ready to accept connections on port 6379
[18816] 07 Oct 18:06:49.535 # User requested shutdown...
[18816] 07 Oct 18:06:49.535 * Saving the final RDB snapshot before exiting.
[18816] 07 Oct 18:06:49.650 * DB saved on disk
[18816] 07 Oct 18:06:49.650 # Redis is now ready to exit, bye bye...

無事起動しました。
(停止するときはコマンドプロンプトでCtr + c)

以上となります。

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る