Linux.Redis.Server(redis-server)和Client(redis-cli)关系
设计的redis命令
redis-server
redis-cli
要从设置密码说起...
本来启动redis的server命令
#启动redis-server,并且指定配置文件
[zf@VM_0_13_centos redis]$ ./bin/redis-server ./redis.conf
这个时候,密码的配置项(requirepass)是配置在redis.conf中的,
所以这个密码我当时觉得是redis-cli客户端连接redis-server的时候需要提供的.
但是redis-cli启动的时候
#启动客户端可以添加的一些配置信息↓
[zf@VM_0_13_centos redis]$ ./bin/redis-cli -h 127.0.0.1 -p 6379
并不需要密码...
但是有时候会提示需要密码...
#启动客户端可以添加的一些配置信息↓
[zf@VM_0_13_centos redis]$ ./bin/redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> INFO
NOAUTH Authentication required.
127.0.0.1:6379> AUTH 你的密码
到这一步我的脑中还是这样的逻辑↓
redis-server中设置密码,
redis-cli中提交密码
但是下面的一个操作,让我有点晕了...
redis-cli还可以修改密码?
2、不重启Redis设置密码:
在配置文件中配置requirepass的密码(当redis重启时密码依然有效)。
redis 127.0.0.1:6379> config set requirepass test123
查询密码:
redis 127.0.0.1:6379> config get requirepass
(error) ERR operation not permitted
密码验证:
redis 127.0.0.1:6379> auth test123
OK
再次查询:
redis 127.0.0.1:6379> config get requirepass
- "requirepass"
- "test123"
PS:如果配置文件中没添加密码 那么redis重启后,密码失效;
当时这一波操作给我的感觉就是,
在客户端中设置密码,那服务端配置的密码还有啥用呢...
并且仔细回想一下,我使用redis-cli的时候从来没有提供密码,
但是启动redis-server使用的那个配置文件确实配置了密码的.
你看看,这些细节都是没有注意到的,细思极恐啊...
然后我搜索了一下,执行redis-cli密码配置,
[zf@VM_0_12_centos redis]# redis-cli -h 127.0.0.1 -a 1234!!!
redis-cli -h 127.0.0.1 -a 1234redis-cli -a 1234redis-cli -a 1234redis-cli -a 1234redis-cli !!!!
(error) ERR unknown command `!!!!`, with args beginning with:
You have mail in /var/spool/mail/root
还报错了...密码还不能添加特殊符号了???
结语
仔细想了下,密码还是配置在服务器(redis-server)上,但是客户端(redis-cli)可以修改密码.
就像数据库连接工具SSMS(SQL Server Management Studio)一样,
只要在SSMS中登录的账户权限足够大,
还是可以修改一些Sql Server服务器配置的,
那个密码中含有"!"不能执行"redis-cli -a 1234!!!"的问题,
后来只能这么处理了
[root@VM_0_12_centos redis]# redis-cli -h 127.0.0.1
127.0.0.1:6379> info
NOAUTH Authentication required.
127.0.0.1:6379> auth "1234!!!"
OK
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2017-03-29 WPF 打开指定文件路径的文件资源管理器