Redis 在 centos下安装方法及常见问题解决
本篇我们来介绍一下如何在Centos下安装redis。其实,安装步骤很简单,只是中间可能会出现一些问题,这是值得我们所关注的。
下面我们先来看一下如何安装。
首先下载redis安装包
# wget http://download.redis.io/releases/redis-4.0.1.tar.gz
然后解压安装
# tar -zxvf redis-4.0.1.tar.gz -C /usr/local/
# cd /usr/local/redis-4.0.1
# make
上述命令顺利运行之后,src中的命令就可以使用了
# src/redis-server //开启redis服务
同样,我们可以使用src中的命令来连接该服务
# src/redis-cli
> set onmpw bar
OK
> get onmpw
bar
是不是很简单。没错,确实是非常简单,简单到我们都开始怀疑人生了。
然而,实际情况并不会像我们所想的那样,问题往往会出现在实际操作中。在安装过程中,当我们执行make命令时,有些情况下会报如下错误
zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory
#include <jemalloc/jemalloc.h>
^
compilation terminated.
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/software/redis-4.0.1/src'
make: *** [all] Error 2
这个错误是什么意思呢?其实我们仔细阅读README会发现有下面一段话:
Allocator
---------
Selecting a non-default memory allocator when building Redis is done by setting
the `MALLOC` environment variable. Redis is compiled and linked against libc
malloc by default, with the exception of jemalloc being the default on Linux
systems. This default was picked because jemalloc has proven to have fewer
fragmentation problems than libc malloc.
To force compiling against libc malloc, use:
% make MALLOC=libc
To compile against jemalloc on Mac OS X systems, use:
% make MALLOC=jemalloc
上面这段话的意思是说关于内存分配器allocator,如果有MALLOC这个环境变量,就会用这个环境变量去构建redis。Redis在linux系统上除了默认使用jemalloc外,还会使用libc来进行编译。默认会先使用jemalloc来编译,因为测试证明jemalloc比libc会出现更少的问题。
当然,如果我们系统上没有jemalloc,那我们可以通过MALLOC环境变量来指定使用libc进行编译。
所以我们可以使用如下命令来进行编译。
# make MALLOC=libc
这样我们就可以正常编译了。
一般情况下,在make执行成功以后,redis会提醒对函数进行测试
# make test
这样问题就又来了,不幸会报如下错误
You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] Error 1
这个很好理解,就是tcl版本太低或者我们系统中根本就不存在tcl。很简单,我们安装高版本tcl就可以了。
# wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
# tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
# cd /usr/local/tcl8.6.1/unix/
# ./configure
# make && make install
安装完成以后,我们再去redis安装目录执行
# make test
这时就可以正常执行检测了。
到此,我们就可以正常使用我们的redis了。但是,我们发现,在使用redis命令的过程中需要输入命令所在目录
# src/redis-cli
或者进入src目录
# cd src
# ./redis-cli
这样使用起来感觉非常不方便。要解决这个问题也很简单。
# cd redis //进入redis安装目录。
# make install
然后我们就可以在任何地方直接使用redis命令了。
相关文章
如何在 CentOS 中获取 IP 地址
发布时间:2023/05/04 浏览次数:108 分类:操作系统
-
这篇简短的文章是对 CentOS 的一个简短介绍,然后简要讨论了我们如何使用命令行界面 (CLI) 在 CentOS 中获取服务器 IP 地址。
在 CentOS 上将 PHP 7.x 更新到 7.4
发布时间:2023/03/29 浏览次数:193 分类:PHP
-
本文展示了将 CentOS 中的 PHP 版本从 7.x 版本更新到 7.4 的步骤。
如何在 CentOS 中添加超级用户 sudo
发布时间:2023/03/17 浏览次数:84 分类:操作系统
-
在 CentOS 中,我们可以通过将用户添加到 wheel 组或将用户添加到/etc/sudoers 文件中来添加超级用户。
centos 上如何安装 GrayLog
发布时间:2023/02/21 浏览次数:112 分类:操作系统
-
在CentOS上安装Graylog需要执行以下步骤: 一、 添加EPEL和MongoDB仓库: sudo yum install epel-release -ysudo rpm -Uvh https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.4/x86_64/RPMS/mongodb-org-server-4.4.4-1.el7.x86_64.
Centos 上如何安装 Elasticsearch
发布时间:2023/02/21 浏览次数:145 分类:操作系统
-
Elasticsearch 是一款基于 Java 开发的开源搜索引擎,因此需要安装 Java 运行环境才能正常运行。 具体来说,Elasticsearch 是基于 Apache Lucene 构建的分布式搜索引擎,它使用 Java 实现了底层的
如何在 Django 应用程序中使用 Redis 进行缓存
发布时间:2023/02/06 浏览次数:115 分类:Python
-
减轻服务器压力的方法之一是缓存数据。 这是通过在处理数据后缓存数据,然后在下次请求时从缓存中提供数据来完成的。 本篇文章将详细讨论 Redis,解释如何在 Python 应用程序中安装
iptables Flush:删除 RedHat 和 CentOS Linux 上的所有规则
发布时间:2022/10/23 浏览次数:206 分类:操作系统
-
在基于 Red Hat 的 Linux 上,iptables 带有某些默认规则。 清理它们并从头开始是个好主意。
如何使用 Node.js 在 Redis Cloud 上存储和检索 RedisJSON
发布时间:2022/09/07 浏览次数:90 分类:学无止境
-
在过去的几个月里,我一直在使用 Redis 数据库来管理我的一些应用程序,随着应用程序的扩展,我发现我正在使用更多的 Redis 功能。其中一项功能是 **Redis Stack**。在深入了解 Redis Sta
通过 Homebrew 在 Mac OS X 上安装和配置 Redis
发布时间:2022/09/07 浏览次数:270 分类:操作系统
-
通过使用 Homebrew,可以大大降低在 Mac OS X 上设置和配置开发环境的成本。让我们安装 Redis。