2014-01-22 50 views
0

我在配置:maxmemory 45GB,内存策略volatile-ttl(我所有的密钥都有ttl,但他们永远不会有机会过期的Windows Server x64上使用redis 2.6.12,因为到期时间在几年之后)。一旦在一天内,在某个小时,我使用BGSAVE创建转储。内存在大部分时间里都是完整的,因为我总是添加新的密钥,而最老的密钥被驱逐。Redis在BGSAVE后立即删除我的所有密钥

问题是,在数据库保存之后,Redis还会立即删除所有密钥,并将内存从45GB降至0GB,将50,000个密钥删除至0个密钥。

为什么会发生这种情况,以及如何在不删除所有密钥的情况下在后台保存数据库?

这里是redis.log文件的一部分:

[708] 05年1月22日:27:30.422 - 1客户端连接(0从站),在使用中
45080973592个字节[708] 05年1月22日: 27:35.894 -DB 0:49424个键(49424易失性)在65536个插槽HT中。
[1] 22 Jan 05:27:35.894 - 1个客户端连接(0个从属),45090250204个字节在使用
[1] 22 Jan 05:27:41.348 - DB 0:49393个密钥(49393易失性)在1505个插槽HT中的数据库0:49394密钥(49394易失性)。1:[1] 22 Jan 05:27:41.348 - 1个客户端已连接(0个从属),45081280352个字节。
[708] 22 Jan 05:27:46.812 - 1个客户端已连接(0个从属),45087803712个字节在使用
[708] 22 Jan 05:27:52.086 - Accepted 192.168.2.11:65374
[708] 22 Jan 05: 27:52.211 - 客户端关闭连接
[1] 22 Jan 05:27:52.274 - DB 0:49396键(49396易失性)在65536个插槽HT中。数据库0:49397密钥(49397易失性)在65536个插槽中HT:1个用户连接(0个从属),45087804476个字节使用
[708] 1月22日:27:52.274 - 22 Jan 05:27:57.746 - 1个客户端连接(0个从站),45087772152个字节在使用
22 Jan 05:28:03.183 - DB 0:49365密钥(49365易失性)在65536个插槽HT中。在1505个插槽HT中的DB 0:49367密钥(49367易失性)。在1505个插槽HT中的DB 0:49393密钥(49393易失性)。在1505个插槽HT中的DB 0:49393个密钥(49393易失性)。在一个65536个插槽HT中,DB 0:49393个密钥(49393个易失性存储器)。在1505个插槽HT中的数据库0:49395密钥(49395易失性)。01:05 05:28:25.006 - 1客户端已连接(0个从站),45091947976使用中的字节
[708] 22 Jan 05:28:30.443。数据库0:49453密钥(49453易失性)在65536个插槽中HT:1个用户连接(0个从属),45086710236个字节使用
[708] 1月22日05:28:30.443 -
22 Jan 05:28:35.894 - 1个客户端连接(0个从站),45090443368个字节在使用
22 Jan 05:28:41.388 - DB 0:49468个密钥(49468个易失性)在65536个插槽HT中。数据库0:49512密钥(49512易失性)在65536个插槽HT中。(705)22/01 05:28:41.388 - 1个客户端连接(0个从属),45095827040个字节正在使用
[1]
22 Jan 05:28:46.861 - 1个客户端已连接(0个从站),45095224584个字节正在使用
22 Jan 05:28:52.293 - DB 0:49490个密钥(49490个易失性)在65536个插槽HT中。 (0从属),45096285456字节使用
[708] 22 Jan 05:28:57.754 - 数据库0:49505密钥(49505易失性)在65536个插槽HT中。
[708] 1月22日05:28:57。754-1个客户端已连接(0个从站),45095954716个字节正在使用
[1] 22 Jan 05:29:03.202 - DB 0:49393个密钥(49393易失性)在65536个插槽HT中。
[708] 22 Jan 05:29:03.202 - 1个客户端连接(0个从属),45086445608字节在使用
[708] 22 Jan 05:29:06.962 - Accepted 192.168.2.11:65462
[708] 22 Jan 05: 29:06.978 * cowBkgdSaveReset删除0 SDS和0 obj项目
[708] 22 Jan 05:29:06.978 - 客户端关闭连接
[1] 22 Jan 05:29:08.634 - 数据库0:49402键(49402易失性)在65536插槽HT。
[708] 22 Jan 05:29:08.634 - 1个客户端已连接(0个从属),45094333732个字节正在使用
[708] 22 Jan 05:29:09.993 *已过时COW DB到期时间46874
[708] 29:14.384 - 1个客户端连接(0个从站),45105573900个字节在使用
[708] 22 Jan 05:29:19.853 - 1个客户端连接(0个从站),45104530004个字节在使用
[708] 1月22日05:29: 25.306 - 1个客户端已连接(0个从站),45099816224个字节在使用
[708] 22 Jan 05:29:30.775 - 1个客户端连接(0个从站),45099575628个字节在使用
[708] 22 Jan 05:29:36.243 - 1客户端连接(0从属),45137384392字节在使用
[708] 22 Jan 05:29:41.712 - 1客户端连接(0从属),45104533564使用的字节
[708] 22 Jan 05:29:47.181 - 1客户端连接(0从属),45099437328使用的字节
[708] 1月22日05:29 :52.651 - 1个客户端已连接(0个从站),45110374948个字节正在使用
[708] 22 Jan 05:29:58.120 - 1个客户端连接(0个从站),45104543108个字节在使用
[708] 22 Jan 05:30:03.589 - 1个客户端连接(0个从站),45104530980个字节在使用
[708] 22 Jan 05:30:09.058 - 1个客户端连接(0个从站),45115479704个字节在使用
[708] 1月22日05:30:14.526 - 1客户端已连接(0个从站),45099701388个字节正在使用
[708] 22 Jan 05:30:19.995 - 1个客户端已连接(0个从站),45104465668个字节正在使用
[708] 22 Jan 05:30:25.464 - (0从属),45110009964字节使用
[708] 22 Jan 05:30:30.933 - 1个客户端已连接(0个从属),45110016116个字节正在使用
[708] 1月22日05:30:36.401 - 1个客户端已连接(0奴隶),45104530348使用字节
[708] 1月22日05:30:41.870 - 1客户(0奴隶),45104530976使用的字节
[708] 22 Jan 05:30:47.339 - 1客户端连接(0奴隶),45112236848字节在使用
[708] 1月22日05:30:52.808 - 1客户端连接0奴隶),45115479704使用的字节
[708] 22 Jan 05:30:58.276 - 1客户端连接(0从属),45099272652使用的字节
[708] 22 Jan 05:31:03.745 - ),45104545068使用的字节
[708] 22 Jan 05:31:09.214 - 1个客户端已连接(0个从属),45110007152个字节正在使用
[708] 22 Jan 05:31:14.683 - 1个客户端已连接(0个从属), 45115480280使用中的字节
[708] 22 Jan 05:31:20.151 - 1个客户端已连接(0个从属),45104532396个字节正在使用
[708] 22 Jan 05:31:25.620 - 1个客户端已连接(0个从属),45099229368个字节正在使用
[708] 22 Jan 05:31:31.089 - 1个客户端已连接(0个从站(0奴隶),45105333432使用的字节
[708] 22 Jan 05:31:42.026 - 1客户端连接(0从属),45130679280使用的字节
[708] 22 Jan 05:31:36.558 - ,45105391176使用的字节
[708] 22 Jan 05:31:47.495 - 1个客户端已连接(0个从属),45102300088个字节正在使用
[708] 22 Jan 05:31:52.964 - 1个客户端已连接(0个从属),45105826172正在使用的字节
[708] 22 Jan 05:31:58.433 - 1个客户端已连接(0个从属),45105884184个字节正在使用
[708] 22 Jan 05:32:03.901 - 1个客户端已连接(0个从属),45105884932个字节使用
[708] 22 Jan 05:32:09.370 - 1个客户端连接(0个从属),45105888636个字节在使用
[708] 22 Jan 05:32:14.839 - 1个客户端连接(0个从属),45106173124个字节使用
[708] 22年1月22日:32:20.308 - 1客户端连接(0奴隶),45101461260 byt es使用
[708] 22 Jan 05:32:25.776 - 1个客户端已连接(0个从属),45111657188​​个字节正在使用
[708] 22 Jan 05:32:31.245 - 1个客户端已连接(0个从属),45106176332个字节使用
[708] 1月22日05:32:36。714 - 1个客户端已连接(0个从站),45139031340个字节在使用
[708] 22 Jan 05:32:42.184 - 1个客户端连接(0个从站),45117175000个字节在使用
[708] 22 Jan 05:32:47.653 - 1个客户端连接(0个从站),45121180196字节在使用
[708] 22 Jan 05:32:53.122 - 1个客户端连接(0个从站),45110913708个字节在使用
[1] 22 Jan 05:32:54.626 * DB已保存磁盘上的
[708] 22年1月22日:32:54.658 *保存背景成功
[708] 22 Jan 05:32:54.658 * cowBkgdSaveReset删除49403 SDS和99937 obj项目
[708] 22 Jan 05:33:11.689 - 1个客户端已连接(0个从站),1876072个字节正在使用
[708] 22 Jan 05:33:17.162 - 4个时隙HT中的DB 0:2密钥(2个易失性)。
[708] 22 Jan 05:33:17.162 - 1个客户端连接(0个从站),828360个字节在使用
[1] 22 Jan 05:33:22.616 - DB 0:2个密钥(2个易失性)
[708] 22 Jan 05:33:22.616 - 1个客户端已连接(0个从站),828360个字节正在使用
[708] 22 Jan 05:33:28.064 - DB 0:6个密钥(6个易失性)
[708] 22 Jan 05:33:28.064 - 1个客户端连接(0个从站),830504个字节在使用
[1] 22 Jan 05:33:33.493 - DB 0:6个密钥(6个易失性)
[708] 22 Jan 05:33:33.493 - 1个客户端连接(0个从站),830488个字节在使用
[1] 22 Jan 05:33:38.930 - DB 0:13个密钥(13个易失性)
[708] 22 Jan 05:33:38.930 - 1个客户端连接(0个从站),1190160个字节在使用
22 Jan 05:33:44.399 - 16个HT中的DB 0:16个密钥(16个易失性)。
[708] 22 Jan 05:33:44.399 - 1个客户端连接(0个从站),1098216个字节在使用
[1] 22 Jan 05:33:49.852 - DB 0:18个密钥(18个易失性)
[708] 22 Jan 05:33:49.852 - 1个客户端连接(0个从站),1099428个字节在使用
[1] 22 Jan 05:33:55.311 - DB 0:22个密钥(22个易失性)

请帮忙吗?

+0

这听起来像一个错误。为什么不在你的Windows机器上“构建”最新版本的Redis? –

+0

@Manu我该怎么做,请给我几个指示?我找到了一个redis.exe版本2.6.14,但redis.exe 2.6.12版本的Redis监视器服务(负责保持redis.exe进程保持活动状态)不起作用。 – user1037955

回答

1

由于这看起来像一个错误,这是我的建议:

(请注意,dmajkic的叉子一样古老2.4)

+0

非常感谢,我会试一试。对不起,我不能投你答案,因为我没有足够的声望。 – user1037955

相关问题