linux下redis安装
admin
2023-05-21 18:42:47
0

安装环境:

linux:centos6.9 64位

redis版本:redis-4.0.2.tar.gz


Redis安装

redis官网地址:http://www.redis.io/

目前最新版本是4.0.2

1、下载源码,解压后编译源码

[root@localhost ~]# wget http://download.redis.io/releases/redis-4.0.2.tar.gz

[root@localhost ~]# tar -xfredis-4.0.2.tar.gz

[root@localhost ~]# cd redis-4.0.2

[root@localhost redis-4.0.2]# make  编译

2、make编译完成后,我们看到如下界面,说明我们安装成功了。

linux下redis安装

    我们在redis-4.0.2/src目录下会看到多了几个可执行文件,其中redis-server是用来启动服务用的,redis-cli是用来启动客户端用的,其他的还不清楚,大家可以查一下。

    默认make完后,我们启动redis服务的话,每次都要进入到安装目录,这样很繁琐,所以我们可以make之后在执行make install,就会把生成的二进制文件放到/usr/local/bin目录

make install

linux下redis安装

1、make install  会在/usr/local/bin路径下生成文件(我运行的这个) ,redis 可执行文件将被复制到/usr/local/bin/

2、make PREFIX=/opt/redis install  指定安装目录,会在/opt/redis下生成一个bin路径,下面是可执行文件 

注:如果是普通用户执行make install是需要需要root权限的,要用sudo make install


3、设置服务

首先将redis-4.0.2/utils/redis_init_script文件复制到/etc/init.d下,同时易名为redis。执行命令

cp redis-4.0.2/utils/redis_init_script  /etc/init.d/redis

vi /etc/rc.d/init.d/redis

在文档第二行添加

# chkconfig: 234580 90。

确保/usr/local/redis/bin中有redis-server和redis-cli文件(如果有些人安装是没有用make install命令,是需要在安装目录下复制redis-server和redis-cli到/usr/local/redis/bin目录下,否则服务启动时找不到redis-server)下图第二个红框所示。

linux下redis安装

可以看到在/etc/init.d/redis文件中有这么一行:CONF="/etc/redis/${REDISPORT}.conf"。于是将redis配置文件拷贝到/etc/redis/下,同时易名为7200.conf。

mkdir /etc/redis
cp redis-4.0.2/redis.conf /etc/redis/7200.conf


拷贝redis.conf到安装目录
cp redis.conf /opt/redis

注:CONF="/etc/redis/${REDISPORT}.conf" 这里就需要修改成你的安装路径的配置文件


4、修改7200.conf配置文件

# 指定redis运行的端口,默认是6379
port 7200
#daemonize no 默认情况下,redis不是在后台运行的,如果需要在后台运行,把该项的值更改为yes
daemonize yes
 
# 当redis在后台运行的时候,Redis默认会把pid文件放在/var/run/redis.pid,你可以配置到其他地址。
# 当运行多个redis服务时,需要指定不同的pid文件和端口
#pidfile /var/run/redis_6379.pid
 
pidfile /var/run/redis_7200.pid 
 
# 指定redis只接收来自于该IP地址的请求,如果不进行设置,那么将处理所有请求,
# 在生产环境中最好设置该项
# bind 127.0.0.1
# 设置客户端连接时的超时时间,单位为秒。当客户端在这段时间内没有发出任何指令,那么关闭该连接
# 0是关闭此设置
timeout 0
 
# 指定日志记录级别
# Redis总共支持四个级别:debug、verbose、notice、warning,默认为verbose
# debug        记录很多信息,用于开发和测试
# varbose      有用的信息,不像debug会记录那么多
# notice  普通的verbose,常用于生产环境
# warning      只有非常重要或者严重的信息会记录到日志
loglevel debug
 
# 配置log文件地址
# 默认值为stdout,标准输出,若后台模式会输出到/dev/null
#修改生成默认日志文件位置
#logfile ""
logfile "/var/log/redis/redis.log"

#配置持久化文件存放位置
dir /opt/data/redisData


5、后台启动两种方法

默认redis启动服务会独占输入屏,若想在后台启动有两种方式:

a、在/etc/init.d/redis中找到$EXEC $CONF 后边加一个&,表示让redis作为后台服务启动

b、修改redis的配置文件?.conf(/etc/redis/7200.conf)将#daemonize no些选项是配置前台还是后台
启动的,如果后台启动设置为yes)


6、加入service服务管理

完成上面的操作之后,即可注册服务:

chkconfig --add redis

然后启动redis服务

service redis start

linux下redis安装

这样我们就将redis服务注册好了。


如果service redis stop ,有提示/var/run/redis_7200.pid does not exist, process is not running

linux下redis安装

这说明在run下没有这个文件,我们进入到/var/run下发先真的没有这个文件,但是有redis.pid文件。

解决方法:

a、将/etc/rc.d/init.d/redis文件中的redis_${REDISPORT}.pid修改为redis.pid

b、修改7200.conf配置文件里面的pidfile /var/run/redis.pid为pidfile /var/run/redis_7200.pid,
删除之前生成pid,重新启动就会生成redis_7200.pid文件了。

这样我们重启服务后,在用该命令关闭就可以了。到这里我们的redis服务就安装好了,并做好了一个服务。

以上就是Linux下安装Redis的全过程,希望对大家安装Redis有所帮助。


附redis启动脚本:

#!/bin/sh
# chkconfig: 2345 80 90
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

REDISPORT=7200
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
                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


相关内容

热门资讯

新闻发布会刚结束,柳州再发地震... 中国地震台网正式测定:05月18日21时44分在广西柳州市柳南区(北纬24.37度,东经109.26...
菲律宾副总统莎拉弹劾审理程序启... 据凤凰卫视报道,菲律宾参议院5月18日下午正式组成弹劾法庭,启动对莎拉·杜特尔特的弹劾审理程序,全体...
洁丽雅报警,“私生子传闻造成严... 5月18日晚间,洁丽雅官方微博发布严正声明。声明提到,近日,网络上出现关于洁丽雅家居股份有限公司、董...
产学研共探规模化路径 量子科仪... 上证报中国证券网讯(记者 刘一枫)量子精密测量正加速跨越技术验证门槛,从“能不能用”的实验室探索,迈...
广西柳州再发生5.2级地震,震... 中国地震台网正式测定:05月18日21时44分在广西柳州市柳南区(北纬24.37度,东经109.26...
研究揭示:人们普遍认为AI比人... IT之家 5 月 18 日消息,如今,全球越来越多民众日常使用人工智能系统,尽管众多用户愿意相信人工...
红魔11S Pro正式发布:骁... 今天红魔11S Pro系列正式发布,发布后数码圈热度居高不下,不少网友直接给到电竞机皇的评价。作为常...
赖清德弹劾案19日举行投票,蓝... 海峡导报综合报道 台民意机构19日将举行赖清德弹劾案的记名投票,朝野甲级动员。中国国民党团今天(18...
小米18全员首发2nm芯片:安... 快科技5月18日消息,博主数码闲聊站最新爆料,今年下半年发布的旗舰机型中,只有小米和苹果两家的旗舰能...
文脉华章|草原文脉汇青城 多元... 央视网消息 金辉灼灼映草原,玉韵悠悠贯千年。5 月17 日,2026 年“5 ·18 国际博物馆日”...