reedis 解决在windows下启动闪退

redis启动出错Creating Server TCP listening socket 127.0.0.1:6379: bind: No error

windows下安装Redis第一次启动报错:

[2368] 21 Apr 02:57:05.611 # Creating Server TCP listening socket 127.0.0.1:6379: bind: No error

解决方法:在命令行中运行

cd d:\redis

redis-cli.exe

127.0.0.1:6379>shutdown

not connected>exit

然后重新运行redis-server.exe redis.windows.conf,启动成功!

启动Redis

直接在上图的目录打开命令窗口,运行:

  1. redis-server redis.windows.conf

结果就悲剧了,提示:QForkMasterInit: system error caught. error code=0x000005af, message=VirtualAllocEx failed.: unknown error 。原因是内存分配的问题(如果你的电脑够强悍,可能不会出问题)。解决方法有两个,第一:启动的时候使用--maxmemory 命令限制Redis的内存:

  1. redis-server redis.windows.conf --maxmemory 200m

第二种方法就是修改配置文件redis.windows.conf :

  1. maxmemory 209715200

注意单位是字节,改完后如下:

之后再运行redis-server redis.windows.conf 就可以启动了:

但是问题又来了,关闭cmd窗口就会关闭Redis,难道服务器上要一直开着吗?这显然是不科学的,下面看怎么在服务器上部署。

部署Redis

其实Redis是可以安装成windows服务的,开机自启动,命令如下:

  1. redis-server --service-install redis.windows.conf

安装完之后,就可看到Redis已经作为windows服务了:

但是安装好之后,Redis并没有启动,启动命令如下:

  1. redis-server --service-start

停止命令:

  1. redis-server --service-stop
posted @ 2017-12-27 20:41  二年后的今天  阅读(6987)  评论(0编辑  收藏  举报