设为首页 收藏本站
查看: 1366|回复: 0

[经验分享] linux下redis安装

[复制链接]

尚未签到

发表于 2017-11-7 09:18:37 | 显示全部楼层 |阅读模式
安装环境:
linux:centos6.9 64位
redis版本:redis-4.0.2.tar.gz

Redis安装
redis官网地址:http://www.redis.io/

目前最新版本是4.0.2
1、下载源码,解压后编译源码
[iyunv@localhost ~]# wget http://download.redis.io/releases/redis-4.0.2.tar.gz
[iyunv@localhost ~]# tar -xfredis-4.0.2.tar.gz
[iyunv@localhost ~]# cd redis-4.0.2
[iyunv@localhost redis-4.0.2]# make
2、make编译完成后,我们看到如下界面,说明我们安装成功了。
b6be09f15c2cee40e84fc6dcd9ced161.jpg-wh_500x0-wm_3-wmp_4-s_1726444301.jpg
    我们在redis-4.0.2/src目录下会看到多了几个可执行文件,其中redis-server是用来启动服务用的,redis-cli是用来启动客户端用的,其他的还不清楚,大家可以查一下。
    默认make完后,我们启动redis服务的话,每次都要进入到安装目录,这样很繁琐,所以我们可以make之后在执行make install,就会把生成的二进制文件放到/usr/local/bin目录
make install
a772cec0f12ce3458ca81f28a8e54af3.jpg-wh_500x0-wm_3-wmp_4-s_1074480221.jpg
注:如果是普通用户执行make install是需要需要root权限的,要用sudo make install

3、设置服务
首先将redis-4.0.2/utils/redis_init_script文件复制到/etc/init.d下,同时易名为redis。执行命令
1
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)下图第二个红框所示。
dd568b37e637ada8859873bacd8cb70c.jpg-wh_500x0-wm_3-wmp_4-s_450360013.jpg
可以看到在/etc/init.d/redis文件中有这么一行:CONF="/etc/redis/${REDISPORT}.conf"。于是将redis配置文件拷贝到/etc/redis/下,同时易名为7200.conf。
1
2
mkdir /etc/redis
cp redis-4.0.2/redis.conf /etc/redis/7200.conf




4、修改7200.conf配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 指定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 stdout
logfile /var/log/redis/redis.log




5、后台启动两种方法
默认redis启动服务会独占输入屏,若想在后台启动有两种方式:
1
2
3
4
a、在/etc/init.d/redis中找到$EXEC $CONF 后边加一个&,表示让redis作为后台服务启动

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




6、加入service服务管理
完成上面的操作之后,即可注册服务:
1
chkconfig --add redis



然后启动redis服务
1
service redis start




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

如果service redis stop ,有提示/var/run/redis_7200.pid does not exist, process is not running
423d823244dcb04fe6ab0debd39dde9a.jpg-wh_500x0-wm_3-wmp_4-s_3393285007.jpg
这说明在run下没有这个文件,我们进入到/var/run下发先真的没有这个文件,但是有redis.pid文件。
解决方法:
1
2
3
4
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启动脚本:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/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





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-406596-1-1.html 上篇帖子: 非root用户安装redis 下篇帖子: redis 未授权访问漏洞和防范
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表