Redis 第四天

140 阅读2分钟

源码安装套路

  • 先看README
  • 先编译
  • 再安装

一、Redis的安装流程

1、编辑redis源码:执行make命令;make原理:makelinux自带的编译命令,是一个编译工具,但是make不知道下载不同的源码包如何进行编译,所以它需要一个文件Makefile文件,它其实就是一个编译脚本:

Makefile:

default: all.DEFAULT:
        cd src && $(MAKE) $@ # 实际上在这里做了跳转,跳转到src下再去执行,知实际被执行的是scr下的Makefile脚本install:
        cd src && $(MAKE) $@

编译:将源码编译成可执行程序

安装:复制拷贝的过程

1-1 编译Redis

  • Redis目录下执行make命令,此时会提示缺少cc,也就是缺少C的编译器,因此需要安装C的编译器,也就是gccyum install gcc
  • 安装完gcc后,再次执行make会报错,因为之前已经编译过失败了,所以需要将之前编译的代码清除掉,然后再次编译,make distclean
  • 再次编译make即可
  • 编译完成后,可以直接执行./redis-server启动redis服务了

但是不可能每次都是人工使用命令执行启动redis服务,更希望能把redis注册成一个服务启动,redis中提供了一个脚本用来将redis注册成系统服务install_server.sh

1-2 Redis注册成服务的操作流程

  • 编译安装:在redis目录下,执行make PREFIX=目标地址 install 命令,指定redis安装的目录

  • 配置redis全局环境变量,全局环境变量的path指向上一步安装的redis目录:首先打开全局变量配置文件:vim /etc/profile,然后在最后一行追加redis环境变量:export REDIS_HOME=redis安装目录 export PATH =$PATH:$REDIS_HOME/bin

  • 刷新内存中的环境变量:profile文件更新了之后,内存是不知道的,因此需要重新让内存读取一次profile文件:source /etc/profile,然后使用命令查看path是否已经生效:echo $PATH

  • 准备工作完成后,就可以执行./install_server.sh(脚本可以执行一次或多次):

    • 一个物理机可中可以存在多个redis实例(进程),通过port区分
    • 可执行程只有一份在目录中,但是内存中未来的多个实例需要各自的配置文件、持久化目录等资源
    • service redis_6379 start|stop|status -> linux /etc/init.d/****(脚本所在的位置)
    • 脚本还会帮你启动

\