Redis 4.x Cookbook 中文版(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-05 04:34:10

点击下载

作者:梅隆魁译

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Redis 4.x Cookbook 中文版

Redis 4.x Cookbook 中文版试读:

前言

Redis作为一个流行的key-value内存数据存储,由于性能高、数据类型丰富、API功能强大、可用性高及架构可伸缩等特点,最近受到了越来越多的关注。自2017年以来,Redis已经成功地在DB-Engine数据库排行榜(DB-Engine Complete Ranking)中排到了9/10。在那之前,Redis甚至还占据过DB-Engine键值存储分类榜单的第一名相当长一段时间。从早期的2.x版本到最新的4.x版本,Redis引入了很多优秀的特性来帮助希望在业务场景中交付低延迟服务的用户。《Redis4.x Cookbook中文版》基于最新的Redis4.x版本,向读者提供了深入浅出的实战案例和相关的背景知识。本书涵盖了Redis的几乎所有方面,从Redis基本数据类型,一直到诸如高可用、集群化、管理和故障诊断等高级主题。

基于实践是最好的老师(Learningby doing is thebestapproach)的理念,本书的作者不遗余力地通过真实的用例向读者呈现有关Redis的知识。换句话说,本书为许多常见的开发和维护问题提供了开箱即用的解决方案。即便是在读者的个人计算机上,只要遵循本书操作步骤小节中的步骤,读者都能够很容易地理解每一个实战案例的关键点。此外,仅仅知道如何使用Redis达成工作目标是不够的;工作原理小节对读者在某项任务中所执行的步骤进行了解释性的说明。在更多细节小节中,本书还提供了有关Redis内部工作原理的相关基本信息和必要的解释。读者越是了解Redis的工作原理,就越能对工程中所涉及的权衡作出明智的决定。每一个实战案例都是按照上述的方式组织的。

最后,我们希望本书能让读者更好地了解Redis,并让读者在自己的场景中使用Redis时能够学到更多的最佳实践。0.1 预期读者

本书面向的是希望开始使用Redis或加深对其认知的开发人员、架构师和DBA。如果读者想使用Redis设计高性能、可伸缩的数据库解决方案,那么本书将通过各种各样的实战案例来引领读者全面深入地了解Redis。本书对于寻求日常运维Redis工作中所碰到的常见问题解决方案的DBA而言同样有用。本书涵盖了使用Redis所涉及的所有方面,并为Redis的日常使用提供了全方位的解决方案和技巧提示。尽管要充分利用本书需要对Redis有一些基本的理解,但也并不是必需的。0.2 主要内容

第1章,开始使用Redis,主要涉及Redis服务器端的安装和基本操作,包括启动和停止Redis服务器、使用redis-cli连接到Redis和获取服务器信息。在本章的最后,还介绍了Redis事件模型和Redis通信协议。

第2章,数据类型,主要涉及Redis的数据类型和操作数据类型的常见API命令。本章介绍了Redis4.x版本中支持的所有数据类型(字符串string、列表list、哈希hash、集合set、有序集合sorted set、HyperLogLog和Geo)。本章还讨论了基本的Redis键管理。

第3章,数据特性,主要涉及一些有用的Redis特性,这些特性使操作数据变得更加容易。本章首先展示了如何使用位图(bitmap)、SORT命令和设置键的过期时间。之后,向读者介绍了Redis的三个重要功能:管道(pipeline)、事务(transaction)和发布订阅(PubSub)。在本章的最后,我们演示了如何在Redis中编写和调试Lua脚本。

第4章,使用Redis进行开发,演示了如何使用Redis开发应用程序。首先,本章讨论了Redis的使用场景和数据类型及API的选择。之后,本章展示了使用Redis客户端库Jedis和 redis-py开发Java和Python应用程序的示例。最后,本书介绍了在Spring Framework中使用Redis及在MapReduce/Spark作业中使用Redis的例子。

第5章,复制(Replication),主要涉及Redis的复制机制。本章展示了如何配置Redis从实例并解释了Redis主从复制的工作原理。然后,本章对Redis调优及主从复制相关的故障排除主题进行了讨论。

第6章,持久化(Persistence),介绍了Redis中的两种持久化方式:RDB和AOF。本章展示了如何在Redis中启用RDB和AOF来实现持久化,并解释了持久化的工作原理。本章还讨论了RDB和AOF之间的区别,以及如何将这两种方式结合起来使用。

第7章,配置高可用和集群(Cluster),主要涉及Redis的高可用相关架构。本章演示了如何配置RedisSentinel和RedisCluster,并通过几个实验对RedisSentinel和RedisCluster的工作原理进行了解释。

第8章,生产环境部署,讨论了在生产环境中部署Redis时所要注意的事项。本章首先讨论了操作系统、网络和安全方面的考虑;之后,涉及了配置调整和日志两个主题,也对LRU策略进行了讨论。最后,本章还讨论了Redis的性能/压力测试。

第9章,管理Redis,主要涉及各种Redis的管理任务,包括更新服务器配置、使用redis-cli、备份和恢复数据、管理内存使用、管理客户端和数据迁移等。

第10章,故障诊断,主要涉及几个有关排除Redis故障的实例。本章涵盖了使用慢日志来定位慢查询的例子,还演示了排除延迟、内存和进程崩溃等常见故障的案例。

第11章,通过模块扩展Redis,讨论了如何使用Redis模块来扩展Redis的功能。本章讲解了Redis模块的工作原理,并演示了如何使用Redis模块SDK来构建Redis模块。

第12章,Redis生态环境,讲解了Redis的第三方组件,还简要地介绍了几个流行的工具、客户端和代理。

附录A,Windows环境搭建,介绍了如何在Windows环境中运行Redis。0.3 如何更好地使用本书

本书中所有的例子都是在Redis4.x上运行的。Linux环境是首选,但也支持macOSX。如果读者使用的是W indows操作系统,那么建议在VirtualBox或VMware中安装和运行一个Linux操作系统。此外,要运行代码示例还需要JDK 1.8+及Python 2.7+或Python 3.4+。0.3.1 下载示例代码

轻松注册成为博文视点社区用户(www.broadview.com.cn),扫码直达本书页面。

•下载资源:本书如提供示例代码及资源文件,均可在0下载资源处下载。

•提交勘误:您对书中内容的修改意见可在提交勘误处提交,若被采纳,将获赠博文视点社区积分(在您购买电子书时,积分可用来抵扣相应金额)。

•交流互动:在页面下方读者评论处留下您的疑问或观点,与我们和其他读者一同学习交流。页面入口:h t t p://www.br oadv iew.com.cn/34081

本书的示例代码包也同样托管在GitHub上,链接为https://github.com/PacktPublishing/Redis-4.x-Cookbook。如果示例代码在本书出版后还有更新,那么将会更新到上述链接对应的GitHub库中。

在https://github.com/PacktPublishing上还有其他的代码及视频等资料。请读者自行查看!0.3.2 下载彩色配图

本书还提供了一个PDF文件,该文件中包括了本书中所用截屏/图表的彩色图像。读者可以从以下链接下载:http://www.packtpub.com/sites/default/files/downloads/Redis4xCookbook_ColorImages.pdf。0.3.3 惯例

本书中有一些行文的惯例。

文本中的代码:表示文本中的代码、数据库表名、文件夹名、文件名、文件扩展名、路径名、占位URL和用户输入。例如:“打开一个终端并使用redis-cli连接到Redis”。

一段代码形如:

fori in `seq 10`

do

nohup node genera tor.js hash 1000000 session:${i}&

done

所有的命令行输入或输出都遵循如下的格式:

127.0.0.1:6379> SETBIT "users_tried_reservation" 100 1(integer) 0粗体:表示一个新术语、一个重要的词或读者在屏幕上所看到的单词。例如,菜单或对话框中的单词。举一个例子:“点击 Import Project from Sources,然后在 coding目录中选择 redis-4.0.1子目录”。0.4 小节

在本书中,读者会发现几个经常出现的标题(准备工作、操作步骤、工作原理、更多细节和相关内容)。

为了清晰地理解每一个实战案例,请按照如下的方式阅读每一小节。0.4.1 准备工作

本节主要包括相应实战案例的主要内容,并描述了相应实战案例所需的软件和预先配置。0.4.2 操作步骤

本节包含了完成相应实战案例所需的步骤。0.4.3 工作原理

本节通常包括对上一节所发生的事情的详细解释。0.4.4 更多细节

本节包含关于实战案例的额外信息,以便加深读者对实战案例的了解。0.4.5 相关内容

本节提供了关于实战案例的其他有用信息的有用链接。译者序

2013年,我在刚刚参加工作之初由于接触ELK而第一次听说了Redis。当时,初次接触Redis是在Logstash中将其用作Shipper与Indexer之间的Broker(队列缓冲,现在通常已经换为Kafka等具有更强消息堆积能力的消息中间件)。2013年,随着内存成本的下降、内存数据库及分布式计算基础设施等的逐渐完善,实现了计算速度、计算能力和计算规模等的量变转向质变,成为了真正意义上的大数据元年。我是一名日常主要与DB2/Oracle/MySQL等关系型数据库打交道的传统银行科技从业人员,而Redis作为大数据基础设施的重要组成部分之一,为我打开了非关系型数据库的大门,使我意识到除了关系型数据库外还有键值存储、文档型数据等所谓NoSQL数据库的存在,也更加让我意识到,在能够真正服务于实际业务场景的系统架构中,往往需要上述多种异构数据库的有机结合。

作为一名J2EE开发工程师,我在工作中除了面向诸如TOPN、全局缓存、全局会话、分布式锁、集合运算、基数计数、基于内存的对账、不严格可靠的消息队列等Redis常见的应用场景外,还需要使用Redis配合Lua脚本实现很多诸如“对性能和精确性均有严格要求的分布式LRU(最近最少使用)算法”等基于传统关系型数据库难以甚至根本无法完成的需求。Redis丰富的数据结构、极高的性能、原子性的操作等特性使其能够弥补关系型数据库的诸多不足;同时,Redis所支持的高可用架构和水平扩展的集群特性等也为其用于真正的生产场景提供了强有力的支持。事实上,诸如新浪微博等具有上千个Redis实例、承载着天量TPS的Redis后端存储服务并不少见;Redis在大量的一线互联网公司和其他领域的科技公司中均扮演着举足轻重的角色。

本书的原作者,两位来自不同领域的优秀一线工程师,黄鹏程和王左非,作为两个中国人,默默地用英文完成了本书的写作,并在国外知名的出版社Packt出版发行——我想,这本身就是一件非常值得称道的事。

纵观目前有关Redis的有限几本在售书籍,面向的主要还是Redis3.x以下的陈旧版本,针对的往往也只是与Redis相关的某个方面,或偏重底层的设计与实现,或偏重运维实践,几乎没有一本书从Redis基础本身进行系统性的介绍,往往在读完一本书后仍然需要配合其他书籍或搭配文档才能用于实际工作;网络上的各类中文资料、教程、手册也大多是碎片化的,甚至有很多漏洞百出的劣质付费课程充斥其中,不利于初学者的学习。

本书针对的是Redis 4.x最新版本,它在写作上没有按照传统中式书籍顺序式照本宣科的写法,而是采用了当下西方更适用于技术类书籍的案例式组织方法。在翻译本书的过程中,透过作者精心设计的80余个实战案例,我能够深刻地感受到作者在通过这些案例让读者融入真正的业务场景所做的努力,也能深切地感受到作者在设计每一个案例或实验时的良苦用心。

通过这些精心规划的案例,读者不仅可以由浅入深地学习有关Redis的几乎所有知识,还可以将案例中所讲解的内容直接用于包括设计、开发和运维等在内的各类生产实践。本书中的每一个案例,每一个案例中所涉及的各种知识、命令和工具等,均来自于作者从事一线企业级应用的总结;本书中总结的各类参数配置和故障诊断的案例等,也均来自作者的真实企业级运维工作经验。我相信,这样一本针对Redis最新版本的系统性书籍一定能够为诸多领域的学生、爱好者和从业人员提供帮助。

这是我翻译的第二本书,在翻译本书的过程中,我依然力图以“信、达、雅”的原则要求自己,从一名计算机行业一线从业者的角度,在尽可能正确地理解了原著英文意思后,用尽可能专业的语言进行表述,避免出现读者“感觉还不如直接去看英本原版”的情况。非常值得一提的是,与国内市面上其他很多译著不同的是,本书的两位作者也在繁重的日常工作中挤出了大量时间,对本书的初译稿进行了极为认真和深入的审阅、校对和修改,在本书完成的过程中付出了大量的心血和贡献。但是,受精力和能力所限,相信在译文中仍然会有诸多不妥、失误甚至错误出现,如果读者有任何意见或建议,可以直接通过我的邮箱(mlkui@163.com)或微信(微信号:MlkuiFly)或QQ读者交流群(QQ群号:701534256)联系我,我虚心接受一切批评和指正。

最后,我要:

•感谢本书两位原作者的信任和认可,给我提供了有幸翻译本书的机会;感谢他们放弃大量休息时间参与本书翻译的全过程,并在本书译稿校对等方面付出了大量心血;

•感谢我的父母、妻子及亲人们多年来给予的无限关心、支持和陪伴,他们是我今天幸福生活的缔造者和组成者,也是我奋斗的根本动力和首要原因;

•感谢我不便在此一一列举的领导和同事们,感谢他们一直以来在工作和生活中给予的无限支持、认可、包容和指点;

•感谢中学、本科及研究生求学生涯中我不便在此一一列举的朋友、校友、同学、学长、老师、导师和团队,感谢他们多年以来给予的陪伴、分享、认可和信任,也祝愿我们在未来携手共创辉煌;

•感谢电子工业出版社、电子工业出版社业界顶级品牌博文视点、博文视点孙学瑛策划编辑的认可和信任,感谢他们在本书引进并最终出版发行全过程中的卓越眼光、专业能力、专业态度和极高的工作效率。梅隆魁2018年4月于北京第1章开始使用Redis

在本章中,我们将学习下列案例:

•下载和安装Redis。

•启动和停止Redis。

•使用redis-cli连接到Redis。

•获取服务器信息。

•理解Redis事件驱动模型。

•理解Redis通信协议。1.1 本章概要

Redis是一个非常流行的基于内存的轻量级键值数据库(key-value database)。严格地说,按照Redis重要贡献者之一Matt Stancliff(@matts ta)的说法,与其把Redis称为一种数据库,不如说Redis是一种数据结构服务器更为恰当(https://matt.sh/thinking-in-redis-part-one)。Redis的作者Salvatore Sanfilippo(@Antirez)起初将其叫作Redis,代表REmoteDIctionary Server。这是因为Redis原生地在内存中实现了多种类型的数据结构,并提供了操作这些数据结构的多种API。更加重要的是,作为一个需要长期运行的数据存储服务,Redis还提供了高性能命令处理、高可靠性/扩展性的架构及数据持久化等特性。

随着高并发、低延迟系统的发展,Redis的使用正在变得越来越广泛。自2017年起,Redis就在DB-Engine排行榜(DB-Engine complete ranking,https://db-engines.com/en/ranking)中排到了前十。在此之前,Redis还一直占据着DB-Engine键值存储分类榜单的第一名相当长一段时间。

本章的目标是带领读者快速搭建一个简单的Redis实例,并学习诸如启动、连接和停止一个Redis服务器等常用操作。另外,还介绍了如何从一个Redis服务器中获取基本信息。本章最后两小节对Redis的事件模型及通信协议进行了详细的讨论。1.2 下载和安装Redis

Redis在GitHub上有一个活跃的社区。在过去几年间已经合并了大量的Pull Request,而作者Antirez也一直在GitHub上及时地回复问题。因此,Redis的发布周期很短。从曾被广泛使用的早期版本2.6/2.8到3.0/3.2,再到最新的4.x,每次的发布都包含了一些重要的新功能、性能提升和缺陷修复。因此,如果可能的话,“使用最新版的Redis”本身就是最佳实践之一。在本书中,我们采用的是写作时最新版的Redis4.0.1。

Redis是一个完全用C语言编写的开源软件,因而我们可以自行编译并安装。大部分操作系统都在其软件仓库中预置了Redis的二进制可执行文件,但这些软件仓库中的Redis版本通常会有点陈旧。1.2.1 准备工作

读者可以从https://redis.io/download中找到下载链接和基本的安装步骤。如果读者想自己在Linux/Unix/macOS系统上从源码编译构建Redis,那么还需要在你的环境中安装gcc编译器和libc。如果要通过操作系统的预发布软件仓库进行安装,那么只需要连接互联网并正确配置好软件仓库即可。1.2.2 操作步骤

我们将在Ubuntu 16.04.2 LTS(Xenial Xerus)中演示Redis的编译和安装。下载及构建的步骤如下。

1.安装编译工具:

2.为Redis创建目录并切换到所创建的目录中:

3.下载Redis:

4.解压下载到的Redis源码并切换到对应的目录下:

5.为Redis的配置文件创建目录并把默认配置文件复制进去:

6.编译依赖项:注意

由于不同操作系统及安装在操作系统中的库之间存在差异,此前提到的步骤可能会出现缺少某些依赖的错误。例如,读者可能会碰到如下的错误消息:zmalloc.h:50:31:fatal error:jemalloc/jemalloc.h:No such file or directory。如果没有依赖项相关的报错,则这一步并非是必需的。

7.编译Redis:

$make

如果编译顺利,将看到如下的提示,代表已经成功地完成了编译:

8.安装Redis:

出现图1.1代表已经成功地完成了安装。图1.1 安装成功

9.进入/redis目录并验证生成了Redis的二进制可执行文件:

恭喜!这样就完成Redis的编译和安装了。

与编译和安装相比,在Ubuntu中使用apt-get安装Redis要容易得多。具体步骤是:

1.首先,更新软件仓库的索引:

2.然后安装:

3.安装完成后,可以使用如下命令来验证Redis是否已经在您的环境中被正确地安装了:1.2.3 工作原理

当涉及Redis版本的选择时,请记住Redis遵循如下的标准版本编号实践,即major.minor.patch(主版本号.次版本号.补丁版本号)的层级形式。偶数的主版本号代表稳定版,奇数的主版本号表示不稳定版(虽然Redis也有少数几个版本使用了奇数的主版本号)。

编译安装和通过软件仓库安装Redis的不同之处在于,前者可以在编译时添加优化或调试选项,还能够灵活地指定安装位置。

安装完成后,bin目录中会有一些可执行文件。关于它们的介绍和备注如表1.1所示。表1.1 bin目录中的可执行文件1.2.4 更多细节

对于Windows操作系统来说,微软开源技术小组(Microsoft Open Technologies group)曾经维护了一个Windows的Redis发行版,读者可以从https://github.com/MicrosoftArchive/redis/releases获取该版本。

读者只需下载.msi可执行文件,然后双击打开,并按照默认配置安装即可。

对于macOS操作系统而言,与Linux操作系统下的编译安装没有什么太大区别。读者还可以通过使用brew install redis命令来安装Redis。1.2.5 相关内容

•有关不同编译选项对Redis性能的影响,请参考MattStancliff在使用不同编译选项时对不同版本Redis性能影响的评估:https://matt.sh/redis-benchmark-compilers。

•出于安全方面的考虑,Redis应该运行在非root权限下。本书第8章生产环境部署中的Redis安全相关设置一节会进行详细的讨论。

•读者可以参阅https://github.com/antirez/redis获取更多的信息。1.3 启动和停止Redis

在使用Redis前,我们必须正确地启动Redis服务。同样,在某些情况下,我们又不得不停止Redis服务。本案例将向读者展示如何启动和停止Redis服务端。1.3.1 准备工作

我们需要按照本章下载和安装Redis的案例中所描述的步骤完成Redis服务器的安装。1.3.2 操作步骤

启动和停止Redis服务端的步骤如下。

1.我们可以使用默认配置来启动一个Redis实例:

服务端此时应该会启动,如图1.2所示。图1.2 启动服务端

2.要在启动Redis服务端时指定配置文件,例如欲使用我们从源码包中拷贝过来的配置文件时,可以使用如下的命令:

3.如果是从操作系统的软件仓库中安装的Redis,那么可以使用 ini t.d脚本启动Redis:

4.如果要以redis-server守护进程的方式在后台启动Redis,那么可以编辑配置文件并将daemonize参数设为yes并使用该配置文件启动:

图1.3中的提示信息 Con f igu ra t ion l oaded说明配置文件已经生效了:图1.3 配置文件生效

5.相应地,我们可以使用Ctrl+C(如果Redis是以前台模式启动的),或Kill+PID(如果Redis是以后台模式启动的)来停止Redis服务:

6.更加优雅和推荐的停止Redis的方式是通过redis-cli调用shutdown命令:

7.如果Redis是从软件仓库中安装的话,那么还可以通过 ini t.d脚本关闭:1.3.3 工作原理

Redis中的术语实例代表一个redis-server进程。同一台主机上可以运行多个Redis实例,只要这些实例使用不同的配置即可,比如绑定到不同的端口、使用不同的路径保存数据持久化相关的文件,或采用不同的日志路径等。

启动和停止Redis实例是基本操作。对于启动Redis而言没有太多需要注意的;但对于一个数据服务来说,停止Redis服务却尤为需要注意,因为作为一种数据存储服务,学会如何优雅地停止Redis服务端以保持数据的一致性,是非常重要的。

之所以强烈建议使用shutdown命令停止Redis服务的原因在于,如果我们关心数据一致性且配置了数据持久化来将内存中的数据保存到磁盘中(Redis数据持久化将在第6章持久化中讨论),那么shutdown命令发出后,除了终结进程外,还会执行一系列的其他操作。

首先,redis-server会停止响应客户端的连接;然后,如果启用了持久化,则会执行数据持久化操作。之后,如果.pid文件和socket套接字文件描述符存在的话,则对其进行清理,并最终退出进程。通过这种策略,Redis会尽可能地防止数据丢失。相反,如果粗暴地使用kill命令来终止redis-server进程,那么由于在服务端关闭之前数据可能尚未被持久化而导致数据丢失。

应该注意的是,使用kill命令或其他进程管理工具向Redis进程发送SIGTERM(15)信号基本上等同于使用shutdown命令优雅地停止redis-server。1.3.4 更多细节

在启动Redis时,可以直接将配置参数添加到redis-server的命令行参数中,这对于在单台主机上部署多个实例的情况非常有用。当单台主机上存在多个实例时,我们可以把通用的配置参数保存在一个配置文件中;同时,在启动Redis时通过命令行参数传递每个实例所独有的配置参数。通过这种方式,可以降低维护多个配置文件的成本,并且可以通过ps或其他系统命令轻松地区分出各个实例。

此外,我们还可以使用诸如systemd、supervisord或Monit等进程管理工具来管理Redis实例,这可以防止在单台主机上部署多个实例时混淆不同的实例。我们唯一需要注意的是前面提到的启动时命令行参数和退出信号的处理机制。1.3.5 相关内容

•请参阅https://redis.io/topics/signals来学习更多关于Redis如何处理不同类型信号的逻辑。请特别注意,这些信号处理机制之间细微但重要的区别。另外,请参阅https://redis.io/commands/-shutdown来了解有关优雅地关闭Redis实例的更多细节。

•对于使用进程管理工具来控制Redis启停的问题,https://git.io/v5chR中给出了一个使用systemd来控制Redis的配置示例。

•此外,读者还可以参考第6章持久化来学习Redis持久化相关的知识。1.4 使用redis-cli连接到Redis

在Redis相关的开发和运维工作中,bin目录中的redis-cli是最常用的工具。本节将简要地描述它的用法,以便读者能够了解如何通过redis-cli连接到Redis和使用Redis。1.4.1 准备工作

我们需要按照本章启动和停止Redis一节中所描述的步骤配置并启动一个Redis服务器。1.4.2 操作步骤

使用redis-cli连接到Redis服务器的步骤如下。

1.打开一个终端,并通过redis-cli连接到Redis:命令行提示符前的提示符是IP地址:Redis监听端口号的形式,这表示redis-cli已经成功地连接到了该Redis实例。

2.我们可以发送一些简单的命令进行测试,其他更多的数据类型和特性将在接下来的章节中进行讨论。(1)设置两个字符串键值对foo value1和bar value2:(2)获取刚刚设置的值:(3)通过发送 shut down命令来停止Redis实例:(4)在Redis服务器关闭后,命令行提示符会变为 not connected。然后,我们退出redis-cli,并再次使用redis-cli进行连接。这时,会看到如下的错误信息:1.4.3 工作原理

在默认情况下,redis-cli会连接到127.0.0.1:6379(默认端口)上运行的Redis实例。我们也可以使用-h选项指定要连接到的主机名/IP地址,只需确保redis-cli和Redis服务器端之间的网络连接没有问题即可。

如果Redis服务器没有运行在默认的 6379端口上的话,可以使用redis-cli的-p选项指定端口号。如果同一主机上运行了绑定不同端口号的多个Redis实例,这个选项也很有用。

另外,如果Redis实例启动了连接密码,那么可以使用-a选项在连接到Redis时指定密码。

此外,如果Redis实例启用了Unix套接字文件,那么只需使用-s选项来指定Unix套接字文件即可直接连接到Redis服务器了。1.4.4 更多细节

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载