window版redis使用中无法保存数据到磁盘

在Windows环境下使用Redis时遇到数据无法保存到硬盘的问题。主要原因是Redis默认不进行数据持久化,需要通过配置redis.conf文件启用。另外,中文路径可能导致保存失败,建议使用英文路径确保正常运行。
摘要由CSDN通过智能技术生成

近来由于项目需要,将redis集成到项目中,使项目中的数据缓存部分交于redis管理。其中有一个典型的问题,数据无法保存到redis指定的磁盘目录中。

1、环境:

          redis2.0.2

          win7,server2003

          jdk1.6.19

2、出现不能保存的不同情况

        (1)通过redis-cli.exe,或是jedis操作redis,用set命令将key/value对存入到redis-server中,结果一直没有保存到硬盘。

                原因:在启动redis-server.exe时,启用的是默认设置,而默认设置是不将redis-server中的数据持久化到硬盘中,所以此时要显示指定redis.conf配置文件给redis-server.exe,如redis-server.exe redis.conf的命令来启动redis-server。当然也要配置好redis.conf中的save参数。

        (2)redis-cli.exe的set命令保存时返回为ok,但是redis-server中的save db to disk时出现无法保存,或是无法创建相关线程去保存数据,具体code为

"[main] redis-server 16676 fork: child -1 - CreateProcessW failed, errno 2"的提示。

              原因:这个问题困扰了我两个小时之多,在其它机器上很好,挪了个机器就不行了,从提示不难看出与系统兼容性无关。最后才推出,原来是中文路径导致的,redis的windows版对中文路径下的碰盘保存路径是不识别的,即保证碰盘路径为中文即可。


时间原因就到此,欢迎交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值