1 下载Redis的tar包
去官网下载http://redis.io/
2 编译和安装所需要的包
Redis是C语言开发,所以依赖C语言
第一步:#yum -y install gcc
第二步:将下载的tar包放在目录下(/home/software/)
mkdir software
解压下载的tar包,在当前文件夹下解压
第三步:在usr/local/ 创建文件夹redis
mkdir redis
第四步:进入/home/software/redis-5.0.7下面
make PREFIX=/usr/local/redis install
安装完成后,可以看到/usr/local/redis 目录下有一个 bin 目录,bin 目录里就是 redis 的命令脚本:
redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server
3 将 Redis 配置成服务:
Redis 的启动脚本为:/home/software/redis-5.0.7/utils/redis_init_script 将启动脚本复制到/etc/rc.d/init.d/目录下,并命名为 redis:
# cp /home/software/redis-5.0.7/utils/redis_init_script /etc/rc.d/init.d/redis
编辑/etc/rc.d/init.d/redis,修改相应配置,使之能注册成为服务:
# vi /etc/rc.d/init.d/redis
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/bin/redis-server CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid CONF="/etc/redis/${REDISPORT}.conf"
case "$1" in start)
if [ -f $PIDFILE ]
then
else
fi
;;
stop)
echo "$PIDFILE exists, process is already running or crashed"
echo "Starting Redis server..."
$EXEC $CONF
if [ ! -f $PIDFILE ]
then
else
echo "$PIDFILE does not exist, process is not running"
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown while [ -x /proc/${PID} ]
do
done
echo "Waiting for Redis to shutdown ..." sleep 1
echo "Redis stopped"
fi
;;
*)
esac
echo "Please use start or stop as first argument"
;;
查看以上 redis 服务脚本,关注标为橙色的几个属性,做如下几个修改的准备: (1) 在脚本的第一行后面添加一行内容如下:
#chkconfig: 2345 80 90
(如果不添加上面的内容,在注册服务时会提示:service redis does not support chkconfig)
(2) REDISPORT 端口保持 6379 不变;(注意,端口名将与下面的配置文件名有关)
(3)EXEC=/usr/local/bin/redis-server 改为 EXEC=/usr/local/redis/bin/redis-server
(4)CLIEXEC=/usr/local/bin/redis-cli 改为 CLIEXEC=/usr/local/redis/bin/redis-cli
(5) 配置文件设置:
创建 redis 配置文件目录conf
# mkdir /usr/local/redis/conf
复制 redis 配置文件/home/software/redis-5.0.7/redis.conf 到/usr/local/redis/conf 目录并按端口号重命名为 6379.conf
# cp /home/software/redis-5.0.7/redis.conf /usr/local/redis/conf/6379.conf
做了以上准备后,再对 /etc/rc.d/init.d/redis 属性作如下调整:
CONF="/etc/redis/${REDISPORT}.conf" 改为 CONF="/usr/local/redis/conf/${REDISPORT}.conf"
#!/bin/sh
# chkconfig: 2345 80 91
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
### BEGIN INIT INFO
# Provides: redis_6379
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Redis data structure server
# Description: Redis data structure server. See https://redis.io
### END INIT INFO
# Default-Stop: 0 1 6
# Short-Description: Redis data structure server
# Description: Redis data structure server. See https://redis.io
### END INIT INFO
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
PASSWORD=123456
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/usr/local/redis/conf/${REDISPORT}.conf"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
$EXEC $CONF & echo
echo "Starting Redis server..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT -a $PASSWORD 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
4 以上配置操作完成后,便可将 Redis 注册成为服务:
第一步:
# chkconfig --add redis
第二步:
防火墙中打开对应的端口
# vi /etc/sysconfig/iptables
添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
重启防火墙:
#service iptables restart
第三步:
修改 redis 配置文件设置:
# vi /usr/local/redis/conf/6379.conf
修改如下配置
daemonize no 改为> daemonize yes
pidfile /var/run/redis.pid 改为> pidfile /var/run/redis_6379.pid
任意位置加入 requirepass 123456
第四步:
将 Redis 添加到环境变量中:
#vi /etc/profile
在最后添加以下内容:
## Redis env
export PATH=$PATH:/usr/local/redis/bin
使配置生效:
# source /etc/profile
启动服务
# service redis start
Ctrl C 退出一下或者回车
输入命令
redis-cli
如果没有设置密码 输入命令:
config requirepass 123456
在输入
auth 123456
auth是验证密码的意思
再然后就可以使用工具登录啦
关闭 Redis 服务
service redis stop
查看redis进程
ps -ef|grop redis
杀死进程:
kill -9 6421
删除文件
rm /var/run/redis_6379.pid