CentOS7中安装Redis4.0.14

前言

工欲善其事必先利其器,操作 Linux 服务器得有一个用着舒服的客户端,这里推荐使用 MobaXterm

MobaXterm 下载地址:https://mobaxterm.mobatek.net/download.html

Redis 下载地址:https://redis.io/download

传输

  1. 打开下载好的 MobaXterm,使用 SSH 连接方式

  2. 连接成功后默认到 root 目录

  3. MobaXterm 左边是目录,在左边目录的最底部,有个选择框(Follow terminal folder)把它勾选上。

    勾选上它后,目录就会跟着你的命令动态发生变化

  4. 输入命令 cd /usr/local/ -> 进入目录

  5. 输入命令 mkdir -p redis/init -> 新建多级文件夹

  6. 输入命令 cd redis/init -> 进入目录

  7. 打开下载到本地的 Redis(redis-4.0.14.tar.gz)文件夹,把 Redis 拖拽到 MobaXterm 左边目录中

  8. 传输需要一点点时间,也可以在 MobaXterm 左边目录底部看到传输进度

安装环境

  1. 输入命令 yum install gcc-c++ -> 安装 gcc 的环境(注:安装途中会询问是否 ok,输入 y )

安装 Redis

  1. 输入命令 tar zxvf redis ,然后按一下 Tab 自动补全剩余名称;回车

  2. 输入命令 cd redis ,然后按一下 Tab 自动补全剩余名称;回车

  3. 输入命令 make -> 编译

  4. 输入命令 make install PREFIX=/usr/local/redis -> 安装到指定路径

启动停止

  1. 输入命令 cd /usr/local/redis/bin/ -> 进入到 Redis 启动目录

  2. 输入命令 ./redis-server -> 启动 Redis,启动成功后可以看到 Redis 的版本,端口等等信息

  3. ctrl + c -> 停止 Redis

注:此时 Redis 如果使用 ./redis-server 方式启动,在本地项目直接连接服务器上的 Redis时会报错

io.lettuce.core.RedisConnectionException: DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients…

配置

在服务器上的 Redis 都不会用上面的方式启动(./redis-server),一般会在启动时带上 redis.conf 配置文件
① 在 redis.conf 里面配置后台启动
② 在 redis.conf 里面配置连接密码
③ 在 redis.conf 里面配置绑定的 ip

  1. 输入命令 cd /usr/local/redis/bin/ -> 进入到 Redis 启动目录

  2. 输入命令 cp /usr/local/redis/init/redis-4.0.14/redis.conf /usr/local/redis/bin/ -> 复制 Redis 解压

    目录中的 redis.conf 文件到 Redis 启动目录,注意更换你的 Redis 版本

  3. 文件内容太长了,这里我直接双击打开 redis.conf 文件,这样的话修改方便

  4. ctrl + F 查找 daemonize no,把 no 更改为 yes -> 后台启动

  5. ctrl + F 查找 requirepass foobared

  6. 紧接着下面写一行 requirepass your password(your password自行更改为你自己的密码)。

    特别注意要顶格写 -> 连接密码

  7. ctrl + F 查找 bind 127.0.0.1,一共有两处,把第二处的 bind 127.0.0.1 注释 -> 外网可访问

  8. ctrl + s 保存,点击 Yes to all

  9. 输入命令 ./redis-server redis.conf -> 启动 Redis

  10. 此时因为是后台启动的 Redis,所以想停止 Redis 就得停止进程

  11. 输入命令 ps -aux | grep redis -> 查看 Redis 进程

  12. 输入命令 kill pid -> 停止进程,pid 为当前查看到的 Redis 进程 ID,从左往右第二个即为 PID

Redis 有两种持久化方案
① rdb -> 优点:存取数据速度快(内存) / 缺点:不能保证数据完整性
② aof -> 优点:可以保证数据的完整性 / 缺点:存取慢(硬盘)
两种持久化方案对应两个文件
① rdb -> dump.rdb
② aof -> appendonly.aof
为什么说 rdb 持久化方案不能保证数据完整性
因为 rdb 持久化方案是先存于内存中,触发一定条件后,才存到硬盘
为什么说 aof 持久化方案存取慢
因为 aof 持久化方案读写是直接操作的硬盘
Redis 默认持久化方案为 rdb。接下来把它更改为 aof

  1. 输入命令 cd /usr/local/redis/bin/ -> 进入到 Redis 启动目录

  2. 文件内容太长了,这里我直接双击打开 redis.conf 文件,这样的话修改方便

  3. ctrl + F 查找 appendonly no

  4. 把 no 更改为 yes(注意中间空格不要删掉了)

  5. 如果下面的 ‘appendfilename “appendonly.aof”’ 被注释了,那么就去掉注释(当前 4.0.14 版本没有被注释)

  6. ctrl + s 保存,点击 Yes to all

  7. 输入命令 ./redis-server redis.conf -> 启动 Redis(如果 Redis 已经是启动状态,那么先 kill 再启动)

安全组

注:如果服务器是在阿里云租用的需要设置安全组

  1. 登录到阿里云

  2. 进入到 ‘云服务器 ECS’ 控制台

  3. 左侧栏中选择 ‘实例’

  4. 进入实例详情,点击左侧栏中 ‘本实例安全组’

  5. 点击安全组中的 ‘配置规则’

  6. 点击 ‘添加安全组规则’ 按钮

  7. 配置 6379 端口

防火墙

注:如果服务器是在阿里云租用的需要开启防火墙。服务器是默认不开启防火墙的,感觉不安全

  1. 输入命令 systemctl status firewalld -> 查看防火墙状态

  2. 输入命令 systemctl start firewalld -> 开启防火墙

  3. 如果你不想开防火墙的话,那就输入命令 systemctl stop firewalld -> 关闭防火墙

  4. 输入命令 systemctl restart firewalld.service -> 重启防火墙

端口

注:端口操作需要在开启防火墙的情况下才能执行成功。如下两条命令只需要执行一个即可

  1. 输入命令 firewall-cmd --permanent --zone=public --add-port=6379/tcp -> 永久开放 6379 端口

  2. 输入命令 firewall-cmd --zone=public --add-port=6379/tcp -> 临时开放 6379 端口

server.c:5307:31: 错误:‘struct redisServer’没有名为‘server_xxx’的成员

redis编译报上面错误,一般是环境问题,执行下面操作可以解决

1、安装gcc套装:

yum install cpp
yum install binutils
yum install glibc
yum install glibc-kernheaders
yum install glibc-common
yum install glibc-devel
yum install gcc
yum install make
2、升级gcc

yum -y install centos-release-scl

yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

scl enable devtoolset-9 bash

3、设置永久升级:

echo “source /opt/rh/devtoolset-9/enable” >>/etc/profile

4、安装redis:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值