使用配置文件启动服务器:src/redis-server redis.conf
主要配置项:Redis支持很多的参数,但都有默认值
General
1:daemonize 默认情况下,redis不是在后台运行的,如果需要在后台运行,把该项的值更改为yes。
2:pidfile ;当Redis在后台运行的时候,Redis默认会把pid文件放在/var/run/redis.pid,你可以配置到其他地址。当运行多个redis服务时,需要指定不同的pid文件和端口。
3:bind 指定Redis只接收来自于该IP地址的请求,如果不进行设置,那么将处理所有请求,在生产环境中最好设置该项。
4 port: 监听端口默认为6379
5:timeout:设置客户端连接时的超时时间,单位为秒。当客户端在这段时间内没有发出任何指令,那么关闭该连接。
6:loglevel log等级为4级,debug,verbose,notice和warning,生产环境下一般开启notice
7 logfile 配置log文件地址,默认使用标准输出,即打印在命令行端口的窗口上
8 databases 设置数据库的个数,可以使用select命令来切换数据库,默认数据库为0
snapshotting
9 save:设置redis进行数据库快照的频率
if(在60秒之内有10000个keys发生变化时){
进行镜像备份 save 60 1000
}else if(在300秒之内有10个keys发生了变化){
进行镜像备份 save 300 10
}else if(在900秒之内有1个keys发生了变化){
进行镜像备份 save 900 1
}
10 rdbcompression:
在进行镜像备份时,是否进行压缩。Redis采用LZF压缩,如果为了节省CPU时间,可以关闭该选项,但会导致数据库文件变的巨大
11 dir
数据库镜像备份的文件放置的路径。这里的路径跟文件名要分开配置是因为Redis在进行备份时,先会将当前数据库的状态写入到一个临时文件中,等备份完成时,再把该该临时文件替换为上面所指定的文件,而这里的临时文件和上面所配置的备份文件都会放在这个指定的路径当中。
Replication
12 slaveof:设置该数据库为其他数据库的从数据库。slaveof
13:masterauth 当主数据库连接需要密码验证时,在这里指定
Security
requirepass 设置客户端连接后进行任何其他指定前需要使用的密码。警告:因为redis速度相当快,所以在一台比较好的服务器下,一个外部的用户可以在一秒钟进行150K次的密码尝试,这意味着你需要指定非常非常强大的密码来防止暴力破解。
Limits
maxclients:限制同时连接的客户数量。当连接数超过这个值时,redis将不再接收其他连接请求,客户端尝试连接时将收到error信息。
maxmemory
设置redis能够使用的最大内存。当内存满了的时候,如果还接收到set命令,redis将先尝试剔除设置过expire信息的key,而不管该key的过期时间还没有到达。在删除时,将按照过期时间进行删除,最早将要被过期的key将最先被删除。如果带有expire信息的key都删光了,那么将返回错误。这样,redis将不再接收写请求,只接收get请求。maxmemory的设置比较适合于把redis当作于类似memcached的缓存来使用。
Advanced Config