完成Redis安装后,我们就可以操作Redis数据库来实现数据的CRUD操作了。这就需要用到Redis客户端,包括命令行客户端、图形化桌面客户端、编程客户端。
1.Redis命令行客户端
Redis安装完成后就自带了Redis命令行客户端redis-cli,通过该客户端可以运行Redis命令,用于在Redis服务上执行操作。
1.1 连接本地Redis服务
如果需要连接本地Redis服务,Redis客户端的基本语法为:
$ redis-cli
启动Redis服务器后,打开终端并输入命令redis-cli,该命令会连接本地的Redis 服务。
$ redis-cli
127.0.0.1:6379> PING
PONG
通过执行PING命令,用于检测Redis服务器是否启动;如果响应结果为PONG,说明已经成功连接到了Redis服务器。
1.2 连接远程Redis服务
如果需要在远程Redis服务上执行命令,同样我们使用的也是redis-cli命令。语法格式如下。
$ redis-cli -h host -p port -a password
对上述命令中的参数做如下的说明。
参数 | 作用 |
-h host | 用于指定远程Redis服务器的IP地址,默认是127.0.0.1。 |
-p port | 用于指定Redis远程服务器的端口号,默认是6379。 |
-a password | 指定Redis的访问密码,即redis.conf文件中的requirepass参数处填写的密码。可选参数,若远程服务器设置了密码则需要输入。 |
下面示例展示了如何连接到远程Redis服务器。
[root@node1 redis-7.2.5]# redis-cli -h 127.0.0.1 -p 6379 -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> PING
PONG
127.0.0.1:6379> exit
1.3 Redis连接命令
Redis连接命令主要是用于连接Redis服务。只有当Redis客户端与服务器正常连接后才能够实现彼此的交互、通信。Redis 通过“Redis序列化协议”(简称RESP),实现客户端与服务端之间的连接通信,该协议主要包括两个部分:网络模型和序列化协议。其中,网络模型主要负责数据交互的组织方式,序列化协议则实现了数据的序列化。
由此可知,Redis客户端与服务端交互的数据是以序列后的协议数据进行传输的。下面是一个简单的请求/响应示意图,如下所示。
下表罗列了常用的Redis连接命令:
命令 | 描述 |
AUTH password | 验证密码是否正确。 |
ECHO message | 打印字符串。 |
PING | 查看服务是否运行。 |
QUIT | 关闭当前连接。 |
SELECT index | 切换到指定的数据库。 |
以下示例演示了客户端如何通过密码验证连接到Redis服务,并检测服务是否在运行,以及Redis其他连接命令的使用。
# 进入控制台后,通过auth命令来指定密码
[root@node1 redis-7.2.5]# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> PING
PONG
127.0.0.1:6379> ECHO "Hello Redis"
"Hello Redis"
192.168.230.131:6379> QUIT
执行上述命令后,终端的结果如下图所示。
2.Redis图形化桌面客户端
Redis有许多第三方可视化工具,可以让你更加直观形象地的操作Redis数据库,常见的Redis GUI工具有Redis Desktop Manager(又称RDM)、Another Redis DeskTop Manager及FastoRedis。
2.1 AnotherRedisDesktopManager
Another Redis Desktop Manager是一个更快、更好、更稳定的Redis桌面(GUI)管理客户端工具,兼容Windows、Mac、Linux,性能出众,轻松加载海量键值。
Another Redis Desktop Manager支持哨兵、集群、ssh通道、ssl认证、stream、subscribe订阅、树状视图、命令行,以及暗黑模式;多种格式化方式,甚至能够自定义格式化脚本,满足你的一切需求。
Another Redis Desktop Manager官网下载地址Another Redis Desktop Manager | 更快、更好、更稳定的Redis桌面(GUI)管理客户端,兼容Windows、Mac、Linux,性能出众,轻松加载海量键值,而且完全开源免费。
2.2 Redis Insight
Redis Insight是由Redis官方提供的免费图形化桌面客户端工具。Redis Insight是一个功能强大的桌面用户界面,可帮助你可视化和优化Redis和Redis Stack的数据。此外,它还支持在功能齐全的桌面UI客户端中进行CLI交互。
Redis Insight官网下载地址RedisInsight - The Best Redis GUI,而且完全开源免费。
2.3 RedisDesktopManager
Redis Desktop Manager(简称RDM)是一个跨平台Redis桌面管理软件,支持Windows、Liunx和macOS。该工具为用户提供了易于使用的Redis可视化操作,同时支持SSL/TLS加密,以及SSH隧道技术和云Redis实例,例如Amazon ElastiCache,Microsoft Azure Redis Cache和Redis Labs。
GitHub上的大神编写了Redis的图形化桌面客户端,下载地址是GitHub - RedisInsight/RedisDesktopManager。不过该仓库提供的是RedisDesktopManager的源码,并未提供Windows安装包(此工具付费)。
我们可以访问Releases · lework/RedisDesktopManager-Windows · GitHub这个仓库找到RDM的安装包(此工具免费)。
Redis的图形化界面工具只是辅助操作,可根据喜好进行选择性下载。我人个推荐使用前两种,因为开源免费,且对不同的操作系统提供了版本支持。本教程我使用的是AnotherRedisDesktopManager客户端工具。
3.桌面客户端连接Redis
由于Redis的图形化桌面客户端工具安装都非常简单,傻瓜式安装即可,因此关于工具的安装这里将不再展开介绍。下面我们以AnotherRedisDesktopManager工具为例,介绍如何连接Redis数据库。
1.防火墙相关操作命令,在使用Redis的图形化桌面客户端连接Redis服务之前,一定要先关闭Linux的防火墙,否则未来在连接Redis服务时可能会提示" Client On Error: Error: connect ECONNREFUSED 192.168.230.131:6379 Config right?"的错误。
# 查询防火墙状态
$ systemctl status firewalld
# 关闭防火墙
$ systemctl stop firewalld
# 启动防火墙
$ systemctl start firewalld
2.完成AnotherRedisDesktopManager安装后,双击图标即可运行。为了操作方便,可以在打开的窗口中点击左上角的设置按钮,将语言设置为简体中文的格式。
3.点击窗口左上角的“新建连接”按钮,在弹出的窗口中填写Redis服务信息,如下图所示。
在Redis连接配置窗口中填写对应的连接地址(Redis服务地址)、连接端口(Redis默认端口为6379)、密码(Redis认证密码)、连接名称(自定义),而用户名和分隔符选项,可以不用配置;然后,单击【确认】按钮进行连接,如果连接失败,则需要重新检查服务启动情况或者连接配置信息,如果连接成功,将进入客户端管理页面。
4.然后点击“确定”按钮,会打开如下图所示的窗口,此时表明Redis服务连接成功。同时我们会发现,在左侧菜单会出现这个一个连接。
5.使用命令行工具。在控制台左侧菜单可以点击“>_”按钮,将会打开下图所示的窗口,在这里可以使用Redis的命令进行操作。
Redis默认有16个仓库,编号从0至15。通过配置文件可以设置仓库数量,但是不超过16,并且不能自定义仓库名称。如果是基于redis-cli连接Redis服务,可以通过select命令来选择数据库。