Redis是一个高性能的,开源key-value型数据库。它可以存储键(key)与5种不同类型的值(value)之间的映射(mapping),可以将存储在内存的键值对数据持久化到硬盘,可以使用复制特性来扩展读性能,还可以使用客户端分片来扩展写性能。
一、 安装配置
服务器环境:CentOS6.6-64
服务器IP: 172.32.2.131
1. 安装
yum install gcc*
yum install tcl
mkdir -p /data/redis/{conf,logs,data}
wget http://download.redis.io/releases/redis-3.0.3.tar.gz
tar xzvf redis-3.0.3.tar.gz -C /data/redis
cd redis-3.0.3
make && make install
操作完成后,会生成如下redis可执行命令。
redis-server: Redis服务器的daemon启动程序
redis-cli: Redis客户端操作工具,也可以用telnet根据其纯文本协议来操作
redis-benchmark: Redis性能测试工具,测试Redis在你的系统及配置下的读写性能
redis-check-aof: 数据修复工具
redis-check-dump:检查导出工具
2. 配置
cp /data/redis/redis-3.0.3/redis.conf /data/redis/conf
修改后的redis.conf配置文件如下:
daemonize yes
pidfile "/var/run/redis.pid"
port 6379
tcp-backlog 511
bind 172.32.2.131 127.0.0.1
timeout 300
tcp-keepalive 0
loglevel verbose
logfile "/data/redis/logs/redis.log"
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "dump.rdb"
dir "/data/redis/data"
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync yes
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
maxmemory 5859375kb
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite yes
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes
3. 启动
redis-server /data/redis/conf/redis.conf
关闭redis服务
redis-cli shutdown
4. 查看日志
less /data/redis/logs/redis.log
查看redis进程
ps -ef|grep redis
查看redis端口
netstat -tpln|grep redis
5. 服务脚本
cp /data/redis/redis-3.0.3/utils/redis_init_script /etc/init.d/redis
修改后的/etc/init.d/redis配置文件如下:
#!/bin/sh
#chkconfig: 2345 80 90
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis.pid
CONF="/data/redis/conf/redis.conf"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
添加开机服务
chkconfig --add redis
chkconfig --list redis