2012-06-06 65 views
8

關閉redis服務器後,使用set存儲的值被銷燬,在這裏我找到了使用持久性存儲的方式,任何人都可以幫助我,如何實現使用javascript?如何在Redis中執行持久性存儲?

我想從redis的DB客戶端存儲一些值,並有能力使用其他客戶端的價值。

+0

我看了一些文件中,提及持久性使用快照實現的,但不能瞭解如何從轉儲文件中檢索數據。 –

回答

27

您需要配置您的Redis服務器以支持持久性機制。該配置存儲在一個文件中,該文件作爲redis-server命令行中的參數提供。

這裏是Redis的2.4默認的文件: https://github.com/antirez/redis/blob/2.4/redis.conf

實際上提供了兩種不同的持久性機制:快照(RDB)和追加,僅文件(AOF)。你會在這裏找到一個完整的解釋:http://redis.io/topics/persistence

最簡單的機制是快照(RDB)。它可以通過定義激活節省dbfilename和配置文件中DIR參數。

要激活RDB不停止Redis的服務器,你可以從Redis的客戶端使用以下命令:

> config set save "300 1" 

它將配置RDB傾倒一切每隔5分鐘(以適應自己的情況) 。

請注意,您應該使用shutdown命令來停止Redis服務器。默認行爲是在停止之前生成最後一個快照。當Redis重新啓動時,轉儲文件將加載到內存中。

如果您需要提取轉儲文件數據(當Redis的脫機),你有一個很好的Python包在https://github.com/sripathikrishnan/redis-rdb-tools

相關問題