文章目录[隐藏]
511遇见多次介绍了redis的安装,它的缓存性能这里就不啰嗦,今天我们测试的版本都比较新,注意版本的核对,和命令顺利。
确认一下centos的版本
[root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core)
一、安装依赖包和开发工具:
yum install vim vim-enhanced wget zip unzip telnet ntsysv compat* apr* nasm* gcc gcc* gcc-c++ ntp make imake cmake automake autoconf python-devel zlib zlib-devel glibc glibc-devel glib2 libxml glib2-devel libxml2 libxml2-devel bzip2 bzip2-devel libXpm libXpm-devel libidn libidn-devel libtool libtool-ltdl-devel* libmcrypt libmcrypt-devel libevent-devel libmcrypt* libicu-devel libxslt-devel postgresql-devel curl curl-devel perl perl-Net-SSLeay pcre pcre-devel ncurses ncurses-devel openssl openssl-devel openldap openldap-devel openldap-clients openldap-servers krb5 krb5-devel e2fsprogs e2fsprogs-devel libjpeg libpng libjpeg-devel libjpeg-6b libjpeg-devel-6b libpng-devel libtiff-devel freetype freetype-devel fontconfig-devel gd gd-devel kernel screen sysstat flex bison nss_ldap pam-devel compat-libstdc++-33
二、解压、编译、安装redis_3.0:
tar zxvf redis-3.0.7.tar.gz -C /usr/src/ cd /usr/src/redis-3.0.7/ make && make install
三、创建redis相关目录:
mkdir -p /home/redis/log mkdir -p /home/redis/pid mkdir -p /home/redis/db mkdir -p /etc/redis/
四、编辑redis.conf配置文件:
cp /usr/src/redis-3.0.7/redis.conf /etc/redis/redis.conf ln -s /etc/redis/redis.conf /etc/redis.conf vim /etc/redis.conf
daemonize yes pidfile "/home/redis/pid/redis.pid" port 6379 tcp-backlog 511 timeout 30 tcp-keepalive 0 loglevel notice logfile "/home/redis/log/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 "/home/redis/db" requirepass "redis-Passw0rd!" slave-serve-stale-data yes slave-read-only yes repl-diskless-sync no repl-diskless-sync-delay 5 repl-disable-tcp-nodelay no slave-priority 100 rename-command CONFIG "" rename-command FLUSHALL "" rename-command FLUSHDB "" rename-command KEYS "" maxmemory 1G appendonly yes appendfilename "appendonly.aof" appendfsync everysec no-appendfsync-on-rewrite no 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
五、编写redis启动脚本:
vim /etc/init.d/redis
#!/bin/sh
# chkconfig: 2345 60 40
# Description: Start and Stop redis
# Provides: redis
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
PIDFILE=/home/redis/pid/redis.pid
CONF="/etc/redis/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
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping Redis server..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
while [ -x ${PIDFILE} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis is stopped"
fi
;;
restart|reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|reload}" >&2
exit 1
esac
六、添加redis系统服务:
chmod a+x /etc/init.d/redis chkconfig --add redis chkconfig --level 2345 redis on chkconfig --list | grep redis
七、启动redis服务:
service redis start ps -aux | grep redis netstat -anptu | grep 6379
八、测试:
redis-cli -h 127.0.0.1 -p 6379 -a redis-Passw0rd!
九、防火墙启用6379端口:
iptables -A INPUT -p tcp --dport 6379 -j ACCEPT