说明:这是最近装redis时,搜了很多相关博客和百度资料,并根据自己安装的实际情况加以总结,所有图片均为自己截图,内容亲测有效,欢迎大家批评指正!
一、安装
1. 下载地址 https://redis.io/download, 下载稳定版5.0.2
发行说明:https://raw.githubusercontent.com/antirez/redis/5.0/00-RELEASENOTES
2. 下载好后通过xftp上传centOS系统中(我放的目录是usr/local/src/)。
3. 进入上传的目录下,解压命令# tar -zxvf redis-5.0.2.tar.gz 。
4. 为redis-5.0.2文件在另外一个redis文件上建立一个同步的链接。
# ln -sv redis-5.0.2/ redis
# cd redis
5. 开始编译解压的文件夹
# make
6. 查看目录,进入src文件夹
7. 开始安装redis ,命令# make install
8. 安装完成,界面如下:
二、配置
1.首先为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中
a) 创建bin和etc文件夹
# mkdir -p /usr/local/redis/bin
# mkdir -p /usr/local/redis/etc
b) 执行Linux移动命令
# mv redis.conf etc/
# mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/re dis/bin
2.后台启动redis服务
a) 切换到/usr/local/redis/etc目录,编辑redis.conf文件,将daemonize属性改为yes(表明需要在后台运行)
# vim redis.conf
b) 切换到/usr/local/redis/bin目录下执行Redis-server命令,使用 /usr/local/ redis/etc/redis.conf 配置文件来启动Redis 服务
# ./redis-server /usr/local/redis/etc/redis.conf
3.服务端启动成功后,执行redis-cli启动Redis 客户端,查看端口号,默认是6379。
# redis-cli
4.编辑服务启动脚本
# vim /etc/init.d/redis
黏贴如下代码:(注意路径,根据实际情况修改)
#!/bin/sh
#
# redis Startup script for Redis Server
#
# chkconfig: - 80 12
# description: Redis is an open source, advanced key-value store.
#
# processname: redis-server
# config: /usr/local/redis/etc/redis.conf
# pidfile: /var/run/redis.pid
source /etc/init.d/functions
BIN="/usr/local/redis/bin"
CONFIG="/usr/local/redis/etc/redis.conf"
PIDFILE="/var/run/redis.pid"
### Read configuration
[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
RETVAL=0
prog="redis-server"
desc="Redis Server"
start() {
if [ -e $PIDFILE ];then
echo "$desc already running...."
exit 1
fi
echo -n $"Starting $desc: "
daemon $BIN/$prog $CONFIG
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
}
stop() {
echo -n $"Stop $desc: "
killproc $prog
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
condrestart)
[ -e /var/lock/subsys/$prog ] && restart
RETVAL=$?
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
RETVAL=1
esac
exit $RETVAL
chmod +x /etc/init.d/redis
service redis start
service redis stop
chkconfig --add redis
5.设置环境变量
# vim /etc/profile.d/redis.sh
添加如下:
6.配置下面的内核参数,否则Redis脚本在重启或停止redis时,将会报错,并且不能自动在停止服务前同步数据到磁盘上/etc/sysctl.conf加上
# vim /etc/sysctl.conf
进入设置 vm.overcommit_memory = 1
# sysctl -p
三、连接客户端(windows下装的客户端 RedisDesktopManager)
1.确保redis正常启动
如果不是如图所示,则未开启redis服务,在redis目录下使用命令行:
# redis-server etc/redis.conf
表示开启成功!
2.查看主机是否连通
使用主机ping虚拟机IP,如图表示成功!
3.配置redis.conf
①将bind 127.0.0.1注释掉
②将保护模式protected-mode由yes改为no
原因:redis具有保护模式,IP地址绑定后导致其他IP无法连接。
注:修改完成后重启服务。
在redis目录下:
关闭服务 # redis-cli shutdown
重启服务 #redis-server etc/redis.conf
4.关闭或者修改防护墙
关闭防火#墙:# service iptables stop
如果出现如图情况:
原因:CentOS7开始默认用的是firewalld,这个是基于iptables的,虽然有iptables的核心,但是iptables的服务没安装,所以你只要停止firewalld服务即可。
解决:# sudo systemctl stop firewalld.service && sudo systemctl disable firewalld.service
5.客户端启动异常
异常:启动服务一直卡在如图所示处:
原因:守护进程为no,导致不能后台运行。
解决:进入redis\etc\redis.conf下将其修改为yes