windows环境使用redis

Redis默认配置很简单,端口,存储日志及路径,密码设置,存储策略等等,具体设置网上很多参考;

port 6379

databases 16

#save 900 1

save 300 10

#save 60 10000

dbfilename dump.rdb

dir d:\redis

requirepass redis@123

maxclients 10000: 默认情况下为10000个客户端。当你无法设置进程文件句柄限制时,redis会设置为当前的文件句柄限制值减去32,因为redis会为自身内部处理逻辑留一些句柄出来。

如果达到了此限制,redis则会拒绝新的连接请求,并且向这些连接请求方发出“max number of clients reached”以作回应。

maxmemory <bytes>:

设置redis可以使用的内存量。一旦到达内存使用上限,redis将会试图移除内部数据,移除规则可以通过maxmemory-policy来指定。

如果redis无法根据移除规则来移除内存中的数据,或者我们设置了“不允许移除”,那么redis则会针对那些需要申请内存的指令返回错误信息,比如SET、LPUSH等。但是对于无内存申请的指令,仍然会正常响应,比如GET等。

需要注意的一点是,如果你的redis是主redis(说明你的redis有从redis),那么在设置内存使用上限时,需要在系统中留出一些内存空间给同步队列缓存,只有在你设置的是“不移除”的情况下,才不用考虑这个因素。

对于内存移除规则来说,redis提供了多达6种的移除规则。他们是:

1.volatile-lru:使用LRU算法移除过期集合中的key
2.allkeys-lru:使用LRU算法移除key
3.volatile-random:在过期集合中移除随机的key
4.allkeys-random:移除随机的key
5.volatile-ttl:移除那些TTL值最小的key,即那些最近才过期的key。
6.noeviction:不进行移除。针对写操作,只是返回错误信息。

无论使用上述哪一种移除规则,如果没有合适的key可以移除的话,redis都会针对写请求返回错误信息。

很多时候这个设置一不小心长时间以后会留下巨坑;

D:\redis>redis-cli.exe -h127.0.0.1 -p6379

Unrecognized option or bad number of argsfor: ‘-h127.0.0.1‘

-h后面有空格~

D:\redis>redis-cli.exe -h 127.0.0.1 -p6379

127.0.0.1:6379> keys *;

(error) NOAUTH Authentication required.


Redis-cli.exe -h 主机ip -p 端口 -a 密码

D:\redis>redis-cli.exe -h 127.0.0.1 -p6379 -a redis@123

127.0.0.1:6379> keys *;

(empty list or set)

查询密码:

Config 被rename display

rename-command CONFIG ""

rename-command CONFIG display或者config命令禁止

以下用display替换config

127.0.0.1:6379> config get requirepass

127.0.0.1:6379> display get requirepass

1) "requirepass"

2) "redis@123"

配置密码:

127.0.0.1:6379> display set requirepa***edis#123

OK

127.0.0.1:6379> display get requirepass

1) "requirepass"

2) "redis#123"

127.0.0.1:6379>display set requirepa***edis@123

OK

127.0.0.1:6379> display get requirepass

1) "requirepass"

2) "redis@123"

127.0.0.1:6379>

查看安装路径:

127.0.0.1:6379> display get dir

1) "dir"

2) "D:\Redis"

注册windows系统服务:

D:\redis\redis-server.exe --service-installD:\redis\redis.1.conf --service-name Redis --loglevel verbose

删除服务:

net stop Redis

redis-server --service-uninstall

进入redis:

D:\Redis\redis-cli.exe -h 192.168.10.1 -p6379

正常启动会显示下信息:

[2916] 07 Sep 12:50:31.550 # Serverstarted, Redis version 2.8.2102

[2916] 07 Sep 12:50:31.550 * The server isnow ready to accept connections on port 6379

            _._                                                 

      _.-``__ ‘‘-._                                            

 _.-``    `.  `_. ‘‘-._           Redis 2.8.2102(00000000/0) 64 bit

.-`` .-.\/ ., ‘‘-._

( ‘ , .-|, ) Running in stand alone mode

|-._-...-__...-.``-._|‘ _.-‘| Port: 6379

| -._. / .-‘ | PID: 2644

-._-. `-./ .-‘ _.-‘

|-._-._ `-._.-‘ .-‘_.-‘|

| -._-. .-‘_.-‘ | http://redis.io

-._-._`-._.-‘.-‘ _.-‘

|-._-._ `-._.-‘ .-‘_.-‘|

| -._-. .-‘_.-‘ |

-._-._`-._.-‘.-‘ _.-‘

 `-._    `-.__.-‘    _.-‘                                      

     `-._        _.-‘                                          

          `-.__.-‘     

有时添加windows系统服务redis以后开不起来会报1067错误,可以删除重新注册服务,系统重启以后大多会正常启动;

windows环境使用redis

上一篇:一个复杂的Windows下的socket程序


下一篇:windows环境测试IP地址是否通