Redis是一个开放源代码的内存中键值数据存储。它可以用作数据库,缓存和消息代理,并支持各种数据结构,例如字符串,哈希,列表,集合等。Redis通过Redis Sentinel提供高可用性,并通过Redis Cluster在多个Redis节点之间自动分区。
在本教程中,我们将介绍如何在Debian 10 Buster上安装和配置Redis。
在Debian上安装Redis
Redis版本5.0.x包含在默认的Debian 10存储库中。要安装它,请以root或具有sudo特权的用户身份运行以下命令:
sudo apt update
sudo apt install redis-server
安装完成后,Redis服务将会自动启动,你可以通过以下命令校验Redis服务是否正常运行:
sudo systemctl status redis-server
输出类似如下所示:
redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-12-05 14:15:23 PST; 27s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Main PID: 2024 (redis-server)
Tasks: 4 (limit: 2359)
Memory: 6.9M
CGroup: /system.slice/redis-server.service
└─2024 /usr/bin/redis-server 127.0.0.1:6379
如果您的服务器上禁用了IPv6,则Redis服务将无法启动。
至此,Redis已在Debian 10服务器上安装并运行,您可以开始使用它了。
配置Redis远程访问
默认情况下,Redis配置为仅在本地主机上侦听。您只能从运行Redis服务的计算机连接到Redis服务器。
如果使用单个服务器设置,并且连接到数据库的客户端也在同一主机上运行,则不应启用远程访问。
要将Redis配置为接受远程连接,请使用文本编辑器打开Redis配置文件:
sudo vi /etc/redis/redis.conf
搜索以开头的行bind 127.0.0.1 ::1
并对其进行注释,如下:
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# bind 127.0.0.1 ::1
保存文件并关闭编辑器。
重新启动Redis服务以使更改生效:
sudo systemctl restart redis-server
使用ss
或netstat
验证Redis正在侦听端口上的所有接口6379
:
ss -an | grep 6379
or
netstat -lntp|grep 6379
您应该看到类似以下的内容:
tcp LISTEN 0 128 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 128 [::]:6379 [::]:*
您还需要添加防火墙规则,以启用来自远程计算机上TCP端口的流量6379
。
假设您正在使用UFW
防火墙来管理防火墙,并且希望允许从192.168.121.0/24
子网进行访问,则可以运行以下命令:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
确保将防火墙配置为仅接受来自受信任IP范围的连接。
完成后,使用该redis-cli
实用程序通过从远程计算机ping Redis服务器来测试连接:
redis-cli -h <REDIS_IP_ADDRESS> ping
该命令应返回以下响应PONG
:
PONG
写在最后
我们已经向您展示了如何在Debian 10上安装Redis。要查找有关如何管理Redis安装的更多信息,请访问Redis文档页面。
如果您遇到问题或有反馈,请在下面发表评论。