1、从 redis 官网 http://redis.io/download 找到安装包的下载地址
2、下载最新版的 redis 到服务器
# wget http://download.redis.io/releases/redis-5.0.5.tar.gz
3、编译安装
# tar zxvf redis-5.0.5.tar.gz
# cd redis-5.0.5
# make
# cd src
# make install PREFIX=/usr/local/redis
4、将源码中的 redis.conf 复制到 redis 安装路径的etc目录下
# mkdir /usr/local/redis/etc
# cp ../redis.conf /usr/local/redis/etc/
5、编写 service 启动文件
# vi /etc/init.d/redis
将下面代码写入文件,修改文件中相应的路径和配置
# chkconfig: 2345 10 90
# description: Start and Stop redis
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
#端口根据自己 redis 需求配置
REDISPORT=6379
#server 路径根据自己 redis 实际路径配置
EXEC=/usr/local/redis/bin/redis-server
#cli 路径根据自己 redis 实际路径配置
REDIS_CLI=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
#redis.conf 路径根据自己 redis 实际路径配置
CONF="/usr/local/redis/etc/redis.conf"
#如果redis配置了requirepass,auth 为 redis.conf 中配置的 requirepass
AUTH="1234"
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 exists, process is not running."
else
PID=$(cat $PIDFILE)
echo "Stopping..."
$REDIS_CLI -p $REDISPORT -a $AUTH SHUTDOWN
sleep 2
while [ -x $PIDFILE ]
do
echo "Waiting for Redis to shutdown..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac
6、给启动文件设置权限和用户组
# chmod +x /etc/init.d/redis
# chown root:root /etc/init.d/redis
7、默认情况,redis不是在后台运行,需要将 redis 放在后台运行
vi /usr/local/redis/etc/redis.conf
将daemonize的值改为yes
8、将 redis 设置为远程可访问
(1)修改 bind ip,这里的 ip,是 redis 服务端的ip地址。服务器可以有一个或多个的网络接口(通俗的说网卡)。比如机器上有两个网卡,分别为 10.29.8.10 和 10.29.8.11,如果bind 10.29.8.10,那么只有该网卡地址接受外部请求,如果不绑定,则两个网卡口都接受请求。
所以可以把 bind 参数改为 bind 127.0.0.1 10.29.8.10,这样,远程客户端(10.29.8.20) 可以通过 /usr/local/redis/bin/redis-cli -h 10.29.8.10 来访问 redis
(2)如果 protected-mode 设置为 yes,去掉 requirepass 前的 # 号(取消注释),并为 requirepass 设置一个 auth 密码(比如 requirepass 123456) 那么连上 redis 后,如果输入查询命令 keys * 就会报错:(error) NOAUTH Authentication required. 需要输入 auth 123456 才可以继续使用查询命令
9、启动 redis
# service redis start
10、设置redis 开机启动
# chkconfig redis on