Redis 基础教程

Redis 命令

Redis 高级教程

Redis 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/redis-config-password.html

redis 配置认证密码及重启相关命令(适用于单机和集群)

Redis CONFIG SET 命令 Redis CONFIG SET 命令


redis 配置认证密码,不管是针对单机或集群,主要有两种方式,一是无需重启的热设置,另一个是需要重启服务;不管哪种方式,都围绕着服务器 config 命令进行操作。

无需重启 redis 配置方式(推荐)

这里面先介绍单机 redis 的设置方式。

第一步,通过客户端命令登陆后,执行密码设置命令:
redis> config set requirepass my_redis

如果之前设置过密码,会提示需要输入密码认证信息。

(error) NOAUTH Authentication required.

输入认证密码后,提示 OK 后,继续上述设置命令,返回 OK。

redis> auth my_psd
OK
redis> config set requirepass my_redis
OK

这时,我们可以通过 config get 命令查看设置密码的信息。

redis> config get requirepass
1) "requirepass"
2) "my_redis"

值得注意的是,到此步只是把 redis 的密码认证设置在了 redis 服务的内存空间,并没有持久化,redis 服务重启后会立即失效,需要下一步的持久化的工作。

第二步,持久化第一步设置的认证密码,主要有两种方式,一是直接到 redis 服务启动的配置文件里直接修改,另一种是通过 redis 自带的持久化配置命令 config rewrite
第一种直接在 redis 配置文件里,增加如下配置密码:
requirepass my_redis

第二种通过 config rewrite 命令直接持久化到相应的配置文件,如下:

redis> config rewrite
OK

设置 OK 后,到对应的配置文件的最后处,会发现如下追加信息:

# Generated by CONFIG REWRITE
requirepass "my_redis"

这里需要注意的是,如果 redis 服务不是通过配置文件启动的,直接采用 redis 硬编码的默认配置启动(未指定配置文件),就会提示由于服务启动未使用配置文件,不能持久化的信息

redis> config rewrite
(error) ERR The server is running without a config file

所以,在生产环境中,尽量基于配置文件启动

重启 redis 服务的密码设置方式

这种方式比较简单粗暴,个人不推荐;它主要有两种 case,一是没有依赖配置文件启动时,二是依赖配置文件启动时。

若没有依赖配置文件启动,其实是无需重启服务,且不可持久化,服务重启就失效,用 config set requirepass xxx 命令即可搞定。

若依赖配置文件启动,直接到配置文件追加认证密码设置,如 requirepass xxx 后,重启 redis 服务即可。

集群的认证密码配置方法

待续...

Redis 从 3.0 版本开始,官方支持集群模式(Cluster),它是一种服务器分片(Sharding)技术;集群的这种模式需要 CLU ...
Elasticsearch是一个开源的分布式搜索和分析引擎,用于存储和检索大规模数据。节点名称(NodeName):为每个节点指定一个唯一的 ...
字符串(Strings)类型是 Redis 最基本也是最简单的一种数据类型。Redis 没有直接使用 C 语言传统的字符串表示(以空字符结尾 ...
Redis 的哈希(Hash)是一个 String 类型的 field 和 value 的映射表,Hash 特别适合用于存储对象。Redis ...
在 es 使用中,开发者想配置自身业务中沉淀的同义词(synonyms)表,并基于该同义词库配置包含其的分析器(analyzer),主要分为 ...