0

最近、OS X に Redis をインストールしました。いくつかのオブジェクトの初期ロードを行いましたが、この点に関してはすべて完全に機能しているようです。

データを保存し、dump.rdbこのディレクトリから redis を起動し、ファイルを使用しない場合、redis.confすべてが計画どおりに進みます。

問題は、落ち着いてredis.confファイルを設定した後、および設定/etc/redis/を完全に無視しているように見えることです。dbfilenamedir

より明確にするために。次の場所にデータ ディレクトリを作成しました/Library/Redis_Data/。Iredis.confセットとdbfilename dump.rdbdir /Library/Redis_Data

起動した場合:redis-server /etc/redis/redis.confのロードを拒否するだけdump.rdbです。

実行して構成パラメーターをredis-cli読み取ることができ、正しい値を返しますが、データは復元されません。get config dbfilenameget config dir

AOFも有効にしました。同じディレクトリにあるファイルappendonly.aofを削除してサーバーを再起動すると、ファイルが再作成されます。

最後に... savecli から実行すると、データが完全に消去され、新しいdump.rdbデータが作成されます。

何かご意見は?

参考までに: redis サーバー v=2.6.9 sha=00000000:0 malloc=libc ビット=64

ありがとう。

4

1 に答える 1

1

解決済み:今朝、この問題を振り返ると、なんとか問題を発見できました。

appendonly元々、モードを有効にせずにデータを追加しました。このテストロードの後、環境をセットアップし、有効にするのが素晴らしいと判断しましたappendonly

私が発見したのはこれです。にデータがあるdump.rdbが、appendonly.aofファイルが空 appendonlyオンになっている場合。代わりに、トランザクションが存在しないdump.rdbために何もする必要がないと仮定して、Redisは無視します。appendonly.aof

私がしたこと:設定ファイルでオフappendonlyにし、通常のディレクトリ設定でRedisを再起動しました。これはdump.rdb私の設定ファイルに従ってロードしました。次に、からコマンドを実行し、redis-cli config set appendonly yesその後に。を実行しましたsave

これにより、appendonly.aofすべてのトランザクションを含むファイルが作成されました。設定appendonlyに戻ってyes、すべてが正しかった。

乾杯、くそったれ

于 2013-02-22T16:44:20.633 に答える