Linux安装redis(基于CentOS系统,Ubuntu也可参考)

前言:本文内容为实操记录,仅供参考!

一、下载并解压Redis

1、执行下面的命令下载redis:
wget https://download.redis.io/releases/redis-6.2.6.tar.gz

2、解压redis:
tar xzf redis-6.2.6.tar.gz

3、移动redis目录,一般都会将redis目录放置到 /usr/local/redis目录:
mv redis-6.2.6 /usr/local/redis

二、编译并安装redis

1、进入redis安装目录,执行make命令编译redis:
cd /usr/local/redis
make

等待make命令执行完成即可。

如果执行make命令报错:cc 未找到命令,原因是虚拟机系统中缺少gcc,执行下面命令安装gcc:
yum -y install gcc automake autoconf libtool make

如果执行make命令报错:致命错误:jemalloc/jemalloc.h: 没有那个文件或目录,则需要在make指定分配器为libc。执行下面命令即可正常编译:
make MALLOC=libc

make命令执行完,redis就编译完成了。

2、执行下面命令安装redis,并指定安装目录
make install PREFIX=/usr/local/redis至此,redis即安装成功。

三、启动redis

1、进入redis安装目录,执行下面命令启动redis服务
./bin/redis-server redis.conf

此时,可以看到redis服务被成功启动:但这种启动方式不能退出控制台,如果退出,那么redis服务也会停止。如果想要redis以后台方式运行,需要修改redis的配置文件:redis.conf 。将该配置文件中的daemonize no 改为daemonize yes即可:
补充:

  1. 通过将redis.conf配置文件中的bind 127.0.0.1 -::1注释掉,实现redis服务允许远程连接。
  2. 通过在redis.conf配置文件中添加requirepass '此处为密码',实现登录校验。

修改完成后,重新执行启动命令启动redis,然后通过下面命令查看redis进程,可以发现redis服务已经被启动了:
ps -ef | grep redis

2、通过redis-cli测试redis是否可用,在redis安装目录执行下面命令:
./bin/redis-cli
3、若设置了登录校验还需要再输入密码进行登录校验:
auth password

4、若没有设置登录校验即可直接进入到redis服务:

此处我们通过下面命令随便set一个字符串类型的值,key是test,value是hello:
set test hello

然后通过下面命令get出test这个key的value值:
get test

测试没有问题,至此,redis在我们的Linux服务器上就已经安装完成了。

附两种报错及解决方案:

  1. 启动Redis报错:
    WARNING overcommit_memory is set to 0 Background save may fail under low memory condition。这是内存的值设置过低的造成的问题。解决:编辑/etc/sysctl.conf,添加vm.overcommit_memory = 1 #表示内核允许分配所有的物理内存
  2. 启动Redis报错:WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.这是因为某个配置文件的值过低,导致无法承载redis服务启动。此时应该再/etc/sysctl.conf文件中添加字段并赋值net.core.somaxconn = 1024,然后执行sysctl -p进行刷新,问题解决。
Redis部署中的问题总汇:http://t.csdnimg.cn/IAslV
相关推荐
Albert Edison1 小时前
【Redis】Centos7.9 安装 Redis 5 教程
数据库·redis·缓存
weixin_523185321 小时前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
Steadfast_GG1 小时前
Redis中的通用命令
redis·缓存
小二·1 小时前
Redis 内存溢出(OOM)排查与恢复实战
数据库·redis·bootstrap
pqk6V6Vep1 小时前
Redis 分布式锁进阶第一篇讲解
数据库·redis·分布式
giaz14n9X2 小时前
Redis 分布式锁进阶第六十一篇
数据库·redis·分布式
My is 李豆2 小时前
CentOS 7 安装 Docker 完整教程(含 docker-compose 插件)
docker·eureka·centos
凡人叶枫2 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
云栖梦泽2 小时前
玩转RK3506SDK
linux·嵌入式硬件
Java面试题总结3 小时前
Linux-Ubantu-贴士-apt的地盘
linux·运维·服务器