Centos7 下安装运行Redis

508 阅读3分钟

下载redis

Redis下载地址

在用户目录下创建redis文件夹,将下载的redis放入该目录下

目前使用的方式是在windows下下载,然后通过xftp传入对应的目录中

解压文件

tar -zxvf redis....

确认gcc是否安装

gcc --version

如果输出如下:
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

输入上面内容相似的,有gcc版本证明gcc已经安装,如果没有出现,那么安装gcc

yum install gcc	

跳转至Redis解压目录下编译安装

进入Redis安装目录

cd Redis-....

编译安装

make MALLOC=libc

进入src目录

cd src && make install	

会有下面的输出

[root@izm5eacp86oa3jm7ytjkc6z src]# make install
CC Makefile.dep

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install

其中make test可以不用执行

这个时候查看/usr/local/bin 文件夹下已经有相应的redis执行程序,如果没有可以将原来redis目录中的src目录里面编译安装的拷贝过去。如下所示

Redis_exe_list

Redis.conf 相关基础配置

redis的配置文件放在解压目录下,redis.conf文件,有几个配置需要修改。

1、bind 127.0.0.1 允许外部访问
# 默认的redis.conf的配置中有
bind 127.0.0.1 # 将这行注释掉,这个配置的作用是只允许本机访问redis,不允许外部访问。bind 绑定的IP指的是Redis服务接收哪些网卡(这里的网卡指的是当前redis所有服务器的网卡)发出的请求(一个服务器可能会有多个网卡的情况,这里的IP不是指的允许访问Reids服务的其他服务IP)

#为了外部可以访问redis,有两种配置可以解决
#第一种:配置你要允许访问redis的网卡IP
bind 192.168.0.1 192.168.0.2 ....
#第二种:允许所有的外部连接访问
bind 0.0.0.0
2、protected-mode
# 保护模块配置,默认如下:
protected-mode yes  # 这是在redis3.2版本之后新增的配置,主要用于设置外部网络连接redis服务,设置方式有两种
# 第一种:关闭保护模式,此时外部网络可以直接访问
protected-mode no		# 不建议使用
# 第二种:开启该模式,配置bind IP或者是设置密码
protected-mode yes
3、requirepass 密码设置
# 如果开启了外部网络连接,尽量还是设置一个密码
requirepass 123456  # 设置密码为123456	
4、daemonize 设置后台运行
# 默认情况下:
daemonize no 
修改为
daemonize yes  #允许redis后台运行

运行Redis服务

redis相关的服务都放在了/usr/local/bin目录下,如果要运行redis服务,可以直接:

redis-server

但是这样运行不是后台的,直接运行的话会占用当前的回话,没办法进行其他操作了,也是按照默认的配置文件进行运行的。一般情况下,需要redis按照指定的配置文件运行

redis-server /usr/local/java/redis-4.0.12/redis.conf &
# 按照指定的配置运行

Redis-cli检验服务

redis-cli 连接redis
redis-cli -h IP地址 -p 端口 -a 密码

连接成功会进入redis命令界面

47.105.187.xxx:6379>

如上就证明进入了redis的命令界面了,可以简单的执行几条命令看效果

47.105.187.xxx:6379> set test 'redis is success'
OK
47.105.187.xxx:6379> get test
"redis is success"
47.105.187.xxx:6379> 

关于Redis的其他高级应用,主从模式的搭建,哨兵模式,集群等环境的搭建会在别的文档中记录,关于Redis的其他用法,命令行操作redis的其他格式数据等也会在别的文档中。