Redis 是一种开源的内存数据结构存储,可用作键值缓存和消息代理。 它支持各种数据结构,例如字符串、列表、集合、散列、位图和 HyperLogLogs。 在本指南中,我们将从项目自己的存储库中在 Ubuntu 22.04 上安装最新稳定版本的 Redis。
在开始安装之前,您需要使用 apt 命令更新系统的软件包索引:
sudo apt update
这显示了更新 可用包列表 及其版本(但实际上并未安装)
sudo apt upgrade
目录
- 在 Ubuntu Linux 上安装 Redis 的不同方法
- 检查Redis服务是否正常运行
- 测试 Redis 以通过 CLI 直接连接到本地主机 Redis
- 配置 Redis 并将 Redis 绑定到本地主机
- 配置 Redis 密码以密码保护您的数据库
- 重命名不安全命令
- 结论
在 Ubuntu Linux 上安装 Redis 的不同方法
让我们直接进入在我们的 Linux 系统上安装 Redis 的步骤。
1.使用apt install命令安装Redis
现在我们可以开始安装 Redis 服务器,在终端中使用以下命令。
要进入您的 Ubuntu 终端,您必须按 CTRL+ALT+T。 这将打开终端。 在终端中插入显示的命令:
sudo apt install redis-server
2.使用Snap安装Redis
使用 snap 包安装 Redis 非常简单。 您所要做的就是在终端中运行以下命令,
sudo snap install redis
如果您的系统没有安装 snap 包管理器,您可以通过运行以下命令来安装,
sudo 易于安装 snapd
3. 通过官方仓库安装 Redis
首先,我们需要将存储库添加到操作系统的 apt 索引中:
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
现在,让我们更新 apt 索引,
sudo apt update
最后,我们现在需要做的就是运行 apt install 命令,
sudo apt install redis
这将自动安装所需的依赖项和文件以及程序。
检查Redis服务是否正常运行
现在应该在您的系统上安装并运行 Redis。 您可以通过键入以下内容进行检查:
systemctl status redis
输出应如下所示:
如果它表明 积极的 被设定为 不活动(死),您可能需要尝试使用手动启动它 systemctl 启动 Redis 然后再次检查其状态。
默认情况下,Redis 不启用密码身份验证,因此任何有权访问您的服务器的人都可以不受任何限制地连接和使用您的数据库。 出于安全原因,我们将在本指南的后面部分为我们的 Redis 实例配置密码。
不过,在这样做之前,让我们通过使用其命令行界面 (CLI) 直接连接到 Redis 的本地主机实例来测试一切是否按预期工作:
测试 Redis 以通过 CLI 直接连接到本地主机 Redis
要通过 CLI 连接到本地主机实例,请键入以下内容,
redis-cli
这应该会打开一个新提示,您可以在其中开始与 Redis 交互。 在提示符下输入 `ping` 并点击 Enter.
如果您收到“Pong”的响应,那么一切都按预期工作,您可以使用 Ctrl + C 或在提示符下键入 exit 退出 CLI。

到目前为止,我们已经成功安装并测试了我们本地的 Redis 实例。 接下来,让我们将它绑定到我们的本地主机,以便我们可以从我们网络上的其他设备访问它。
配置 Redis 并将 Redis 绑定到本地主机
默认情况下,Redis 不绑定任何 IP 地址,因此只能通过本地主机连接到您的服务器来访问它。
如果您希望能够从您网络上的其他设备连接到它,您需要将它绑定到您服务器的公共 IP 地址。
要配置已安装的 Redis 安装,我们将需要任何代码编辑器或文本编辑器。 为了简单起见,我们将使用 纳米,因为 nano 与 Ubuntu 一起发布。
sudo nano /etc/redis/redis.conf
这将打开 Redis 配置文件,

查找以 bind 开头的行并通过删除行开头的 # 字符取消注释。
然后,用您服务器的公共 IP 地址替换该行的当前值:bind 192.168.0.100
进行此更改后,保存并 close 文件。
要应用对 redis.conf 所做的更改,请重新启动 Redis 服务:
sudo systemctl restart redis
您现在可以使用服务器的公共 IP 地址而不是本地主机从网络上的其他设备连接到您的 Redis 数据库。
但是,任何知道您的服务器 IP 地址并有权访问您的网络的人都可以不受任何限制地连接到您的数据库。
在下一节中,我们将向您展示如何使用密码保护您的数据库以防止未经授权的访问。
配置 Redis 密码以密码保护您的数据库
您需要再次编辑 Redis 的配置文件并将 requirepass 指令设置为您选择的强密码。
为了 example 需要传递你的密码
设置 requirepass 指令后,保存并 close 文件。
然后,重新启动 Redis 服务以使更改生效:
sudo systemctl restart redis
通过 Redis CLI 连接到数据库时,您现在需要提供密码。
为此,请键入以下命令:
redis-cli
然后输入:
授权
然后是您的密码:
输出
(错误)NOAUTH 需要身份验证
如果您收到一条错误消息,指出需要身份验证,则意味着密码保护正在按预期工作。
您现在可以通过键入 exit 退出 CLI。
重命名不安全命令
有许多 Redis 命令可能很危险,因为它们可用于删除整个数据库。 为防止意外删除您的数据,您可以重命名这些命令,以便它们只能由知道新名称的人执行。
为此,再次打开 Redis 的配置文件:
sudo nano /etc/redis/redis.conf
找到标有“安全” 并寻找 重命名命令指令.
默认情况下,它被注释掉,因此您需要通过删除行开头的 # 来取消注释。
然后,您可以为每个要重命名的命令指定一个新名称。 为了 example要将 KEYS 命令重命名为其他名称,您可以像这样设置指令:
rename-command KEYS new_name
进行更改后,保存并 close 文件。 然后,重新启动 Redis 服务以使更改生效:
sudo systemctl restart redis Y
您现在可以通过尝试执行重命名的命令来测试更改。 为了 example,如果您将 KEYS 命令重命名为 new_name,如果您尝试执行它,您应该会收到一条错误消息,指出该命令不存在:
redis>键
(错误)ERR 未知命令 KEYS
参数以 : 开头 KEYS
,*
,0
,
现在您已经成功地重命名了危险命令,您的数据库应该可以更好地防止意外删除。
结论
在本指南中,您在 Ubuntu 服务器上安装了 Redis 并对其进行了配置以更好地保护您的数据。 您现在可以开始在您的应用程序中使用它。