Skip to main content

如何重启密码认证的 Redis

Dev
Table of Contents

这篇文章的命令适合 debian/ubuntu 用户

如果你的 redis 有使用 AUTH(密码、加密),你会知道下面的命令是不行的

$ sudo service redis-server restart

我是升级 redis 时才发现这个“问题”的。不知道是不是一件好事 😂。

大家应该知道 Redis 的密码是明文写在 redis.conf 的文件里,正确来说是 requirepass 这个配置。(离题……)

正确重启方法
#

用开 AUTH 的 redis 重启方法只有一个。登陆 redis,在 redis-cli 里关掉它。然后再启动。

$ redis-cli

# 认证你自己
AUTH MY_PASSWORD

# 关掉 redis
shutdown


# 再次开启 redis 的 service
$ sudo service redis-server start

方法二
#

修改 /ect/init.d/redis 文件。研究一下,restart 这个命令其实是 stop 然后 start 而已。再看看 stop 的代码……

CLIEXEC=/usr/local/bin/redis-cli
REDISPORT="6379"

# stop) ....

$CLIEXEC -p $REDISPORT shutdown

不就是个 redis-cli 命令嘛~

既然需要密码,我们修改一下即可。

$CLIEXEC -a 密密麻麻 -p $REDISPORT shutdown

# 注意新的 `-a 密密麻麻`

意思跟第一个方法一样,就是多了 AUTH 的参数。

有兴趣可以看看 redis-cli 有什么其它参数

$ redis-cli --help