redis安装

转自:http://www.cnblogs.com/_popc/p/3684835.html

一.下载

 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(异步,推荐) 可以手动持久化

生存时间

 

 
posted on 2016-09-18 15:42  天娱邪神  阅读(127)  评论(0编辑  收藏  举报