Redis Desktop Manager 使用前的准备工作

Redis Desktop Manager 是一款强大的 Redis 图形化管理工具,它能帮助管理人员以更直观、便捷的方式管理 Redis 数据。不过,在使用 Redis Desktop Manager 之前,需要完成一系列准备工作,以确保顺利连接和管理 Redis 数据库。

一、注释 redis.conf 文件中的 bind 127.0.0.1

在 Redis 的配置文件 redis.conf 中,bind 127.0.0.1 这一行的作用是限制 Redis 只接受来自本地回环地址的连接。如果希望 Redis 能够接受来自其他主机的连接请求,就需要将这一行注释掉。注释的方法是在该行文字前加上 #号。例如:

bash 复制代码
# bind 127.0.0.1

这样,Redis 就不会仅仅绑定在本地回环地址上,而是可以接受其他符合网络策略的地址的连接请求。不过,在生产环境中,放开绑定地址时需要谨慎考虑安全问题,建议结合设置密码等安全措施一同使用。

二、设置 Redis 密码

为了增强 Redis 的安全性,设置密码是一个重要的步骤。设置密码的操作需要在服务端开启的情况下,通过客户端来完成。具体步骤如下:

  1. 开启服务端:打开一个终端,进入 Redis 的安装目录,执行启动 Redis 服务的命令。例如,如果 Redis 安装在 /usr/local/redis 目录下,并且使用默认配置文件 redis.conf 启动,可以执行以下命令:
bash 复制代码
/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
  1. 连接客户端并设置密码:再开启一个新的终端,使用 Redis 客户端连接到 Redis 服务。如果 Redis 服务运行在本地,默认端口是 6379,可以使用以下命令连接:
bash 复制代码
redis-cli -h 127.0.0.1 -p 6379

连接成功后,就可以设置密码了。设置密码有两种常见方式:

  • 通过命令行设置(临时生效,重启服务后密码失效):在客户端中执行以下命令,将密码设置为 yourpassword(请替换为实际想要设置的密码):
bash 复制代码
config set requirepass yourpassword

执行该命令后,无需重启 Redis 服务,当前设置的密码立即生效。但如果 Redis 服务重启,密码会恢复到原来的状态(如果原来没有设置密码,则又变为无密码状态)。

  • 通过修改配置文件设置(永久生效):使用文本编辑器打开 Redis 的配置文件 redis.conf,找到 requirepass 配置项。该项默认是被注释掉的,如下所示:
bash 复制代码
# requirepass foobared

取消注释,并将后面的字符串修改为自己的密码,例如:

bash 复制代码
requirepass yourpassword

修改完成后,保存配置文件。然后重启 Redis 服务,使新的密码设置生效。可以通过以下命令重启 Redis 服务(假设 Redis 安装在 /usr/local/redis 目录下):

bash 复制代码
/usr/local/redis/src/redis-cli shutdown
/usr/local/redis/src/redis-server /usr/local/redis/redis.conf

设置密码后,再次连接 Redis 时,需要在连接命令中加上密码参数。例如:

bash 复制代码
redis-cli -h 127.0.0.1 -p 6379 -a yourpassword

或者先连接,再通过 auth 命令输入密码进行认证:

bash 复制代码
redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth yourpassword

如果密码正确,会返回 OK,表示认证成功。

三、确保网络畅通以及 6379 端口对外开启

  1. 查看 CentOS 的 IP 地址:在 CentOS 系统中,如果不知道当前系统的 IP 地址,可以通过在终端中执行 ifconfig 命令来查看。执行该命令后,返回的结果中第一段数据通常包含本机的 IP 地址。例如:
bash 复制代码
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe79:62c0  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:79:62:c0  txqueuelen 1000  (Ethernet)
        RX packets 3722  bytes 3467001 (3.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1440  bytes 103443 (101.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

这里的 inet 192.168.1.100 就是该 CentOS 系统的 IP 地址。

  1. 在 Windows 中测试端口是否畅通 :拿到 CentOS 的 IP 地址后,回到 Windows 系统中,打开命令提示符(cmd),使用 telnet 命令测试 CentOS 系统的 6379 端口是否畅通。例如,如果 CentOS 的 IP 地址是 192.168.1.100,则在 cmd 中执行以下命令:
bash 复制代码
telnet 192.168.1.100 6379

执行该命令后,可能会出现以下三种情况:

  • 连接成功:返回的结果可能类似于黑屏状态,光标闪烁,没有报错信息。这表示 Windows 能够成功连接到 CentOS 的 6379 端口,说明网络畅通且端口开放,可以继续后续操作。
  • telnet 不是内部或外部命令:这是因为 Windows 系统默认没有安装 telnet 客户端工具。解决方法是打开 "控制面板" -> "程序" -> "程序和功能" -> "启用或关闭 Windows 功能",在弹出的窗口中找到 "Telnet 客户端",勾选并点击 "确定" 进行安装。安装完成后,即可使用 telnet 命令。
  • 连接失败:例如返回 "无法打开到主机的连接,在端口 6379: 连接失败" 等类似错误信息。这通常表示 CentOS 的 6379 端口没有对外开放,需要在 CentOS 系统中进行相应设置。
  1. 在 CentOS 中开启 6379 端口:在 CentOS 系统中,可以使用防火墙相关命令来开启 6379 端口。首先,需要获取 root 权限,例如通过 sudo -i 命令切换到 root 用户。然后执行以下操作:
  • 检查端口是否已开启:执行命令 firewall-cmd --query-port=6379/tcp,检查 6379 端口是否已经开启。如果返回结果为 no,说明该端口尚未开启。
  • 开启 6379 端口:执行命令 firewall-cmd --add-port=6379/tcp,将 6379 端口添加到防火墙允许访问的端口列表中。如果命令执行成功,会返回 success。
  • 再次检查端口状态:执行 firewall-cmd --query-port=6379/tcp 命令,此时返回结果应该为 yes,表示 6379 端口已经成功开启。

如果在使用 firewall 命令时遇到问题,例如虚拟机中无法使用 firewall 命令,或者使用 yum install firewall 命令提示找不到该包,可以尝试使用其他方式开启端口。例如,使用 iptables 命令:

bash 复制代码
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

该命令将允许所有机器访问本机的 6379 端口。执行完该命令后,还需要保存 iptables 的设置,以确保重启后设置仍然生效。在 CentOS 系统中,可以使用以下命令保存设置:

bash 复制代码
/etc/rc.d/init.d/iptables save

完成上述所有步骤后,就为使用 Redis Desktop Manager 连接 CentOS 上的 Redis 数据库做好了充分准备。通过 Redis Desktop Manager 的连接配置界面,输入 CentOS 的 IP 地址、端口号(6379)以及设置好的密码(如果有设置),就可以成功连接并管理 Redis 数据了。

总结

通过注释 redis.conf 中的 bind 限制、设置 Redis 密码以及确保网络和端口畅通,我们能够为使用 Redis Desktop Manager 连接 Redis 数据库创造必要条件。每一个步骤都至关重要,尤其是安全相关的设置(如密码设置)和网络配置(如端口开放),在实际应用中需要根据具体的环境和需求进行合理调整,以保障 Redis 服务的稳定运行和数据安全。

相关推荐
vvw&3 小时前
Linux 中的 .bashrc 是什么?配置详解
linux·运维·服务器·chrome·后端·ubuntu·centos
chuanauc5 小时前
记录一次在 centos 虚拟机 中 安装 Java环境
java·linux·centos
weixin_438335405 小时前
Redis:分组与设备在 Redis 中缓存存储设计
redis·缓存·bootstrap
秋也凉10 小时前
redis的命令集合
数据库·redis·缓存
都叫我大帅哥11 小时前
Redis内存淘汰策略:从OOM崩溃到丝滑运行的终极指南
java·redis
R-sz12 小时前
java内存缓存实现 与 redis缓存实现 (ConcurrentHashMap 应用)
java·redis·缓存
岁岁岁平安20 小时前
Redis基础学习(五大值数据类型的常用操作命令)
数据库·redis·学习·redis list·redis hash·redis set·redis string
鬼才血脉1 天前
Linux(centos)安装 MySQL 8
linux·mysql·centos
来自宇宙的曹先生1 天前
用 Spring Boot + Redis 实现哔哩哔哩弹幕系统(上篇博客改进版)
spring boot·redis·后端