CentOS7安装Redis

CentOS7安装Redis

下载

Redis官网
Redis5.0.8版本下载

官网安装使用教程

Redis-5.0.8官网安装使用说明
PS: 官网教程安装需要有条件的, 但官网没说明(或者本人没看到)

安装

将下载好的安装包, 上传到centos服务器(自己想办法上传)
本人放到/usr/local/目录下

  • 解压安装:
[_redis local]$ tar -zxvf redis-5.0.8.tar.gz
  • 安装gcc依赖(官网安装没有说明的)
// 如果提示选择, 则输入y继续
[_redis local]$ yum install gcc 

// 或者使用默认选择y的安装命令: 
[_redis local]$ yum -y install gcc
  • 进入redis的安装目录, 编译redis
// 进入刚解压的redis安装目录
[_redis local]$ cd redis-5.0.8
// 编译redis
[_redis redis-5.0.8]#  make
......
Hint: It‘s a good idea to run ‘make test‘ ;)
make[1]: Leaving directory `/usr/local/redis-5.0.8/src‘       // 说明安装成功

启动Redis

PS: 问题是会占用一个窗口, 不方便, 不好!
使用ctl + c可以关闭

  • 以后台进程方式启动Redis

    1. 在Redis的安装目录下, 修改Redis的配置文件redis.conf
    // 进入redis的安装目录
    [_redis ~]# cd /usr/local/redis-5.0.8/
    // 使用vim命令, 修改redis.conf
    [_redis redis-5.0.8]# vim redis.conf
    
    // 修改 daemonize 原来的 no 改为 yes , 保存退出
    daemonize yes
    1. 指定redis.conf文件启动
    // 在redis的安装目录下, 指定redis使用指定配置文件启动
    [_redis redis-5.0.8]# src/redis-server /usr/local/redis-5.0.8/redis.conf 
    5618:C 08 Apr 2020 03:50:00.017 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
    5618:C 08 Apr 2020 03:50:00.017 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=5618, just started
    5618:C 08 Apr 2020 03:50:00.017 # Configuration loaded
    1. 关闭redis进程
    // 使用命令 ‘ps -ef | grep redis‘ 查看redis进程
    [_redis redis-5.0.8]# ps -ef | grep redis
    root       5584   1400  0 03:33 pts/0    00:00:02 src/redis-server *:6379
    root       5621   5592  0 03:52 pts/1    00:00:00 grep --color=auto redis
    
    // 使用kill命令关闭进程
    [_redis redis-5.0.8]# kill 5584
  • 设置Redis开机自启动

    1. 在/etc目录下新建redis目录
    [_redis redis-5.0.8]# cd /etc/
    [_redis etc]# mkdir redis
    1. 复制redis启动配置文件
    // 将/usr/local/redis-5.0.8/redis.conf 文件复制一份到/etc/redis目录下
    [_redis etc]# cp /usr/local/redis-5.0.8/redis.conf /etc/redis/
    1. 将redis的启动脚本复制一份放到/etc/init.d目录下
    // 复制redis的启动脚本
    [_redis redis]# cp /usr/local/redis-5.0.8/utils/redis_init_script /etc/init.d/redisd

    4.将redis的服务启动/关闭等的程序复制到/usr/local/bin/

    // 复制redis的各服务程序到‘/usr/local/bin/‘目录下
    [_redis redis]# cp /usr/local/redis-5.0.8/src/redis-server /usr/local/bin/
    [_redis redis]# cp /usr/local/redis-5.0.8/src/redis-cli /usr/local/bin/
    [_redis redis]# cp /usr/local/redis-5.0.8/src/redis-benchmark /usr/local/bin/    
    [_redis redis]# cp /usr/local/redis-5.0.8/src/redis-check-aof /usr/local/bin/
    [_redis redis]# cp /usr/local/redis-5.0.8/src/redis-check-rdb /usr/local/bin/
    [_redis redis]# cp /usr/local/redis-5.0.8/src/redis-sentinel /usr/local/bin/

    5.修改启动使用的配置文件, 设置redis开机自启动

    // 进入目录: /etc/init.d/
    [_redis redis]# cd /etc/init.d/
    [_tomcat init.d]# vim redisd 
    // 找到下面一行, 注释掉, 换上前面(1)复制的实际文件路径, 保存退出
    # CONF="/etc/redis/${REDISPORT}.conf"
    CONF="/etc/redis/redis.conf"
    
    // 设置开机自启动
    [_tomcat init.d]# chkconfig redisd on
    1. 非重启linux启动redis服务
    // 使用命令: service redisd start 启动redis服务
    [_tomcat init.d]# service redisd start
    Starting Redis server...
    5847:C 08 Apr 2020 04:31:14.657 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
    5847:C 08 Apr 2020 04:31:14.657 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=5847, just started
    5847:C 08 Apr 2020 04:31:14.657 # Configuration loaded
    1. 关闭redis服务
    // 使用命令: service redisd stop 关闭服务
    [_tomcat init.d]# service redisd stop
    Stopping ...
    Redis stopped

    PS: 查看启动脚本redis_init_script, 在有shell脚本使用的基础上, 可以对文件进行部分修改, 以达到自己想要的结果

问题

[_redis local]$ service redisd stop
Stopping ...
/etc/init.d/redisd: line 38: /usr/local/bin/redis-cli: No such file or directory

这个问题是因为没有将/usr/local/redis-5.0.8/src/目录下的几个服务复制到/usr/local/bin/目录下导致的
如果怕漏复制服务, 可以使用命令: cp -r /usr/local/redis-5.0.8/src/* /usr/local/bin/将src目录下所有文件都复制到/usr/local/bin/目录下


参考连接

Redis5.0.8版本下载

CENTOS7下安装REDIS

CentOS7下Redis的安装与使用

chkconfig工具

chkconfig