Linux下Redis的安装和部署
一、Redis介绍
Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,Redis支持各种不同方式的排序。
和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的应用场景适用于缓存无需持久化的数据。而Redis不同的是它会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,实现数据的持久化。
二、Redis的安装
下面介绍在Linux环境下,Redis的安装与部署
1、首先上官网下载Redis 压缩包,地址:http://redis.io/download 下载任意稳定版本,本文使用稳定版4.0.8。
2、通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压操作
3、执行make 对Redis解压后文件进行编译(编译需要安装gcc)
编译完成之后,可以看到解压文件redis-4.0.8 中会有对应的src、conf等文件夹,这和windows下安装解压的文件一样,大部分安装包都会有对应的类文件、配置文件和一些命令文件。
4、编译成功后,进入src文件夹,执行make test进行测试
5、如果出现上面的情况,则安装tcl,并再次执行make test进行测试
yum -y install tcl
6、测试无误后,进入src目录执行make PREFIX=/usr/local/redis install,安装在/usr/local目录下
三、Redis的部署
安装成功后,我们可以看到/usr/local目录下多出了一个redis目录
1、把解压的redis-4.0.8目录下的redis.conf文件拷贝到安装路径下面
cp redis.conf ../redis
2、进入redis/bin目录执行redis-server 命令,启动redis 服务
注意:这里直接执行redis-server 启动的Redis服务,是在前台直接运行的(效果如上图),我们的控制台不能进行任何操作了,只能ctrl+c停止启动。如果Lunix关闭当前会话,则Redis服务也随即关闭。正常情况下,启动Redis服务需要从后台启动,并且指定启动配置文件。
3、编辑redis.conf文件,将daemonize属性改为yes
4、再次启动redis服务,并指定启动服务配置文件
5、服务端启动成功后,查看端口号,执行redis-cli启动Redis 客户端,
四、设置Redis开机启动
1、拷贝启动脚本到/etc/init.d/目录下
cd /usr/local/redis-4.0.8/utils
cp redis_init_script /etc/init.d/redis
vim /etc/init.d/redis
文件内容如下(需要修改):
#!/bin/sh
# chkconfig: 345 90 10
# description:Redis is a persistent key-value database
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF=/usr/local/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
;;
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
2、修改文件权限:chmod +x /etc/init.d/redis
添加服务:chkconfig --add redis
上面注释:chkconfig: 345 90 10 表示redis服务必须在运行级3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
3、设置环境变量,添加export PATH=/usr/local/redis/bin:$PATH
为了使配置立刻生效,需要执行source /etc/profile命令
参考资料:https://www.cnblogs.com/wangchunniu1314/p/6339416.html
参考资料:http://blog.csdn.net/qq_20989105/article/details/76390367
参考资料:https://www.cnblogs.com/yingdiblog/p/7453007.html