转自:
一.下载
1 mkdir /usr/local/software/redis/ 2 yum install wget ...... 3 tar zxvf redis-2.4.16.tar.gz 4 yum install gcc 5 进入解压开的文件 6 make MALLOC=libc #默认jemalloc 但会报错 7 make clearn PREFIX=/usr/local/redis install #安装到指定目录中 8 make PREFIX=/usr/local/redis install #安装到指定目录中 9 make install PREFIX=/usr/local/redis install #安装到指定目录中10 不要make test.
二.做成服务
看到的内容如下(下内容是更改好的信息):
1 #!/bin/sh 2 #chkconfig: 2345 80 90 3 # Simple Redis init.d script conceived to work on Linux systems 4 # as it does use of the /proc filesystem. 5 6 REDISPORT=6379 7 EXEC=/usr/local/redis/bin/redis-server 8 CLIEXEC=/usr/local/redis/bin/redis-cli 9 10 PIDFILE=/var/run/redis_${REDISPORT}.pid 11 CONF="/etc/redis/${REDISPORT}.conf" 12 13 case "$1" in 14 start) 15 if [ -f $PIDFILE ] 16 then 17 echo "$PIDFILE exists, process is already running or crashed" 18 else 19 echo "Starting Redis server..." 20 $EXEC $CONF & 21 fi 22 ;; 23 stop) 24 if [ ! -f $PIDFILE ] 25 then 26 echo "$PIDFILE does not exist, process is not running" 27 else 28 PID=$(cat $PIDFILE) 29 echo "Stopping ..." 30 $CLIEXEC -p $REDISPORT shutdown 31 while [ -x /proc/${PID} ] 32 do 33 echo "Waiting for Redis to shutdown ..." 34 sleep 1 35 done 36 echo "Redis stopped" 37 fi 38 ;; 39 *) 40 echo "Please use start or stop as first argument" 41 ;; 42 esac
3、启动Redis服务。
$ redis-server redis.conf
4、
通过客户端命令redis-cli完成Redis关闭操作: redis-cli shutdown 三 测试与调优
然后用客户端测试一下是否启动成功。
$ redis-cli redis> set foo bar OK redis> get foo bar 数据测试 redis-benchmark -l
调优
四 持久化
1). RDB持久化:
该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘。
2). AOF持久化: 该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。 3). 无持久化: 我们可以通过配置的方式禁用Redis服务器的持久化功能,这样我们就可以将Redis视为一个功能加强版的memcached了。 4). 同时应用AOF和RDB。
默认是RDB持久化
save 900 1 #当有一条Keys数据被改变时,900秒刷新到Disk一次save 300 10 #当有10条Keys数据被改变时,300秒刷新到Disk一次save 60 10000 #当有10000条Keys数据被改变时,60秒刷新到Disk一次 启用AOF
appendonly yes #启用AOF持久化方式appendfilename appendonly.aof #AOF文件的名称,默认为appendonly.aof# appendfsync always #每次收到写命令就立即强制写入磁盘,是最有保证的完全的持久化,但速度也是最慢的,一般不推荐使用。appendfsync everysec #每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,是受推荐的方式。# appendfsync no #完全依赖OS的写入,一般为30秒左右一次,性能最好但是持久化最没有保证,不被推荐。
no-appendfsync-on-rewrite yes #在日志重写时,不进行命令追加操作,而只是将其放在缓冲区里,避免与命令的追加造成DISK IO上的冲突。auto-aof-rewrite-percentage 100 #当前AOF文件大小是上次日志重写得到AOF文件大小的二倍时,自动启动新的日志重写过程。auto-aof-rewrite-min-size 64mb #当前AOF文件启动新的日志重写过程的最小值,避免刚刚启动Reids时由于文件尺寸较小导致频繁的重写。
save bgsave(异步,推荐) 可以手动持久化 生存时间