Ubuntu下Redis密码设置问题及其解决方案[通俗易懂]

Ubuntu下Redis密码设置问题及其解决方案[通俗易懂]Ubuntu下Redis密码设置问题及其解决方案一、Redis设置密码1.命令行设置密码。2.配置文件设置密码二、遇到问题&解决问题1.无法打开配置文件:2.配置文件密码修改成功点击保存但是却gedit警告:3.gedit配置文件修改密码成功但仍CONFIGGET为空4.注意修改配置文件完成后,一定要重启Redis服务器!叮嘟!最近做项目学习用到了Redis,在刚开始的摸索过程踩…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺


叮嘟!最近做项目学习用到了Redis,在刚开始的摸索过程踩了不少雷,写篇博客分享一下踩雷经验。


在这里插入图片描述

Redis设置密码有两种方式。

一、Redis设置密码

1. 命令行设置密码。

运行Ubuntu,先启动Redis服务端

redis-server

在这里插入图片描述
另开一个Ubuntu窗口启动Redis客户端:

redis-cli

在这里插入图片描述
客户端使用config get requirepass命令查看密码:

>config get requirepass
1)"requirepass"
2)""    //默认空

在这里插入图片描述
客户端使用config set requirepass yourpassword 命令设置密码

>config set requirepass yourpassword

如示例:设置密码为123456

>config set requirepass 123456
>OK

注意:一旦设置密码,必须先验证通过密码,否则所有操作不可用。
操作见如下示例:

>config get requirepass
(error)NOAUTH Authentication required
使用auth password验证密码
>auth 123456
>OK
>config get requirepass
1)"requirepass"
2)"123456"

验证如下图:
在这里插入图片描述
也可以退出重新登录:

>redis-cli -h 127.0.0.1 -p 6379 -a 123456

实例操作如下图所示:
在这里插入图片描述
命令行设置的密码在服务重启后失效,所以一般不使用这种方式。

2. 配置文件设置密码

找到redis.conf配置文件,搜索requirepass,找到注释密码行,添加密码如下:

# requirepass foobared
requirepass 123456     //注意,行前不能有空格

在这里插入图片描述

重启服务后,客户端重新登录后发现

>config get requirepass
1)"requirepass"
2)""
                         密码还是空?

关键:虽然修改了.conf文件,但是exe却没有使用这个conf,所以我们需要手动指定一下exe按照修改后的conf运行,就OK了。

所以,这里再一次重启redis服务(指定配置文件)

>redis-server 配置文件路径(如下!十分十分重要!!!)
>redis-server /etc/redis/redis.conf
客户端再重新登录,OK了。

>redis-cli -h 127.0.0.1 -p 6379 -a 123456
>config get requirepass
1)"requirepass"
2)"123456"

话说我最大的跟头就是栽在了这里。 >.<
在这里插入图片描述

二、遇到问题&解决问题

1.无法打开配置文件:

(1)问题描述:
在这里插入图片描述

rooty@Floret:~$ gedit /etc/redis/redis.conf

(gedit:22613): dbind-WARNING **: 23:09:28.280: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
(gedit:22613): dconf-WARNING **: 23:09:28.367: failed to commit changes to dconf: GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._g_2dfile_2derror_2dquark.Code2: Cannot open dconf database: Failed to open file “/home/rooty/.config/dconf/user”: Permission denied

翻译一哈:

(gedit:22613):dbind警告**:23:09:28.280:无法向辅助功能总线注册:未收到答复。可能的原因包括:远程应用程序未发送答复、消息总线安全策略阻止了答复、答复超时已过期或网络连接已断开。
(gedit:22613):dconf警告**:23:09:28.367:未能提交对dconf:GDBus的更改。错误:org.gtk.GDBus.unappedgerror.Quark.\u gò2dfileò2derrorò2dquark.Code2:无法打开dconf数据库:未能打开文件“/home/rooty/.config/dconf/user”:权限被拒绝

(2)解决办法

用户权限不够,使用sudo命令输入密码即可:
sudo gedit /etc/redis/redis.conf

在这里插入图片描述

2.配置文件密码修改成功点击保存但是却gedit警告:

  Set document metadata failed

在这里插入图片描述
保存之后有警告提示如图:
在这里插入图片描述
问题已解决:参见链接博客

ubuntu18.04 gedit警告问题
https://blog.csdn.net/qq_43543789/article/details/104221619

3.gedit 配置文件修改密码成功但仍CONFIG GET为空

(1)问题描述:如图所示查看配置文件也显示已经修改成功,但是重启服务器后获取密码还是为空。
在这里插入图片描述
(2)艰难摸索解决路途小记:
在这里插入图片描述
第一次try:(E)无论如何编辑
(修改了但是仍然没有起色。)
第二次try:(D)删除它
(删除后修改但是仍然没有起色。)

问题不在这里,但是这里可以直接选择删除就好,因为没啥影响,你可以在vi再次修改配置文件相关操作,swp文件是之前你操作的中间文件。

在这里插入图片描述
这里成功进入Redis配置文件redis.conf如下图示:
在这里插入图片描述
更改了密码后在命令模式下执行 wq! 保存修改并退出
在这里插入图片描述
重启Redis服务:
在这里插入图片描述
由于迷途摸索,我查阅了help文档 如何覆盖另存文件
(原来是想把那个现有的swp文件内容覆盖合并到redis.conf。)
在这里插入图片描述
在这里插入图片描述
问题描述:

'cpoptions' option.

Note that the 'fsync' option matters here.  If it's set it may make writes
slower (but safer).

                                                        :sav :saveas
:sav[eas][!] [++opt] { 
   file}
                        Save the current buffer under the name { 
   file} and set
                        the filename of the current buffer to { 
   file}.  The
                        previous name is used for the alternate file name.
                        The [!] is needed to overwrite an existing file.
                        When 'filetype' is empty filetype detection is done
                        with the new name, before the file is written.
                        When the write was successful 'readonly' is reset.
                        { 
   not in Vi}

                                                        :up :update
:[range]up[date][!] [++opt] [>>] [file]
                        Like ":write", but only write when the buffer has been
                        modified.  { 
   not in Vi}

大概翻译一下:

:sav 
:saveas
:sav[eas][!] [++opt] { 
   file}
保存当前缓冲器的名称&文件
                                                         用文件名 { 
   file} 保存当前缓冲区,并设置当前缓冲区的文件名为 { 
   file}。 
                                                         前一个名字用作轮换文件名。 
                                                         [!] 用以覆盖已存在的文件。 
                                                         如果 'filetype' 为空,在写入文件前用新名字进行文件类型检测。 
                                                         如果写操作成功,复位 'readonly'

注意 :The [!] is needed to overwrite an existing file.
这里我是使用了sav! 但是忽略了这个指令必须要有参数(目的文件名)才能执行操作。

在这里插入图片描述
( 这里傻傻操作想把那个现有的swp文件内容覆盖合并到redis.conf。如下图 :)
在这里插入图片描述
出现错误提示:
在这里插入图片描述
没办法覆盖合并小啊呜想直接进行密码操作,发现竟然强制不能进行修改了。哭哭!
在这里插入图片描述
如下图实例,最后强制退出结束了这场摸索。(重点要来了!)
在这里插入图片描述
重点来了!!!)
在这里插入图片描述
我在没有关闭redis正在运行的服务基础上执行如下命令

sudo redis-server /etc/redis/redis.conf

在这里插入图片描述
然后习惯性查看进程状态,发现了个我一直忽略的事情:
仔细比对下图圈1和圈2标色的两个redis服务进程。
在这里插入图片描述

rooty      201  0.0  0.0  49828  2404 tty2     Sl   00:35   0:00 redis-server
root       212  0.1  0.0  49828  2084 ?        Ssl  00:42   0:00 redis-server *:6379

rooty和root表面差别在:redis-server和redis-server *:6379。

因为我小偷懒每次运行Redis服务都不指明配置文件结果造成更改配置文件但是其实是木有使用修改的配置文件。
(天了噜)

后续摸索:
(注意:我为了防止原先设置操作密码123456的干扰,后面另启窗口手动修改了配置文件密码为 florety
在这里插入图片描述
首先关闭了默认配置文件的rooty下的Redis服务。然后进行root下的Redis连接。相关操作如下图:
从例图我们可以看到,这个时候我们之前修改的redis.conf文件才起作用,设置的密码才有效。
在这里插入图片描述
密码验证登录试一哈!
Duang! 一切顺利~
终于解决了这个心头大患!
在这里插入图片描述
在这里插入图片描述

4.注意修改配置文件完成后,一定要重启Redis服务器!

如下图可见服务器已经关闭。
在这里插入图片描述
啊!怎么就2点多了!
晕晕,
要睡觉啦!
在这里插入图片描述
终于O了,累晕辽。
关于Redis的更多学习使用随后再来吧!

就酱,嘎啦!

在这里插入图片描述

注:
1.Redis设置密码参见:
https://www.cnblogs.com/x-ll123/p/9717351.html。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197688.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SFM原理简介「建议收藏」

    SFM原理简介「建议收藏」StructureFromMotionSFM简介通过相机的移动来确定目标的空间和几何关系,是三维重建的一种常见方法。它与Kinect这种3D摄像头最大的不同在于,它只需要普通的RGB摄像头即可,因此成本更低廉,且受环境约束较小,在室内和室外均能使用。SFM基本原理小孔相机模型在计算机视觉中,最常用的相机模型就是小孔成像模型,它将相机的透镜组简化为一个小孔…

    2022年6月20日
    30
  • Vue全家桶介绍_vue全家桶有什么好处

    Vue全家桶介绍_vue全家桶有什么好处全家桶:顾名思义。对于一个完整的中大型单页面应用项目所必须的插件和框架。一、vue-clivue-cli也叫脚手架,官方定义为Vue.js开发的标准工具!相比script标签引入1)、功能丰富对Babel、TypeScript、ESLint、PostCSS、PWA、单元测试和End-to-end测试提供开箱即用的支持。2)、易于扩展它的插件系统可以让社区根据常见需求构建和共享可复用的解决方案。3)、无需EjectVueCLI完全是可配置的,无需eject。这样你的项目就可以长

    2025年6月16日
    2
  • 服务器硬件基础知识

    服务器硬件基础知识服务器的概述计算机的硬件主要有主机和输入/输出设备。主机包括机箱,电源,主板,CPU(中央处理器),内存,显卡,声卡,网卡,硬盘,光驱等。输入/输出包括显示器,键盘,鼠标,音箱,摄像头,打印机和扫描仪等。服务器服务器是指在网络环境下运行相应的应用软件,为网上用户提供共享信息资源和各种服务的一直高性能计算机。服务器的选择:处理器性能,I/O性能,管理性,可靠性,扩展性。同样…

    2022年7月22日
    11
  • linux eth0网卡配置详解「建议收藏」

    linux eth0网卡配置详解「建议收藏」对eth0网卡配置有两种方法,一是临时配置、二是永久配置,下面分别介绍:一、临时配置eth0的ip和子网掩码,一旦重启即失效。1.1使用ifconfig命令配置,命令如下:ifconfigeth0192.168.80.111netmask255.255.255.0配置完成后可再次使用ifconfig命令查看是否配置成功,如下…

    2022年5月30日
    259
  • 深度学习-图解卷积运算

    深度学习-图解卷积运算卷积神经网络 Convolutiona CNN 针对全连接网络的局限做出了修正 加入了卷积层 Convolution 层 和池化层 Pooling 知层 CNN 被广泛应用于图像识别 语音识别等各种场合 在图像识别的比赛中 基于深度学习的方法几乎都以 CNN 为基础 比如 AlexNet VGGNet GoogleIncept 及微软的 ResNet 等 上 近几年深度学习大放异彩 CNN 功不可没 单通道 二维卷积运算示例 如上图所示 红色的方框圈中的数

    2025年9月14日
    2
  • python3.9多线程_python创建多线程

    python3.9多线程_python创建多线程什么是线程?线程也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位。线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其

    2022年7月28日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号