记一次远程连接redis的时候 连接不上
就很奇怪, 明明服务器里面的redis没有设置过密码 就连使用python连接的时候都没有输入过密码连接redis 莫名其妙今天/12-07连接出错
报错提要
AUTH ERROR
报错信息已删除...
看到这里 莫名其妙 以前连接的好好的 也没修改过什么配置文件...
A君: 看一下能不能连接上?
B君: 不能 还是一样的问题 AUTH ERROR...
A君: 我去远程检查一下
随后 A君 来到远程 查看了一下redis的进程与是否运行状态
$ service redis status
运行状态效果如下:
● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-12-07 11:19:27 CST; 3h 27min ago
Docs: http://redis.io/documentation,
man:redis-server(1)
$ systemctl restart redis.service # 注意这句 对于我的redis不太友好...一直没有重启成功.. 所以没必要
随后 A君 又查看一下redis的进程
$ ps -ef|grep redis
redis 10571 1 0 11:19 ? 00:00:11 /usr/bin/redis-server 0.0.0.0:6379
root 13533 13490 0 14:48 pts/2 00:00:00 grep --color=auto redis
都没啥问题 那么问题来了 这是什么问题?...
排除redis.conf文件的修改问题
因为以前在设置redis的时候 就已经把 bind 127.0.0.1 修改过了
具体操作:
1. 进入redis的文件下 ubuntu下的redis
cd /etc/redis/
2. 修改redis.conf文件 将bind 127.0.0.1 改成 bind 0.0.0.0
vim redis.conf # 注意如果需要权限 则需要在vim 前面加 sudo
kill掉redis-server进程
1. 先查看一下进程号
$ ps -ef|grep redis
redis 10571 1 0 11:19 ? 00:00:11 /usr/bin/redis-server 0.0.0.0:6379
root 13533 13490 0 14:48 pts/2 00:00:00 grep --color=auto redis
2. kill进程号 注意权限问题 sudo
$ kill -9 l0571
在redis目录下 重新启动redis
$ /etc/redis# redis-server ./redis.conf
配置了redis.conf 重启一下生效
其实 重启一下就可以连接到redis的 但是阿里云一直在提示 服务器不安全-redis没有设置密码连接那些..所以 索性这次就配置上
此时 使用redis-cli 进入redis客户端 设置个密码...
进入客户端后 直接执行config set requirepass XXXXXXX
redis-cli
127.0.0.1:6379> config set requirepass 密码
127.0.0.1:6379> exit 退出
最后 使用django连接redis 加个密码
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://:你的密码@127.0.0.1:6379/0',
'OPTIONS': {
'CLIENT_CLASS': 'django_redis.client.DefaultClient',
}
},
注意密码前面的 : 号与后面的 @
取消设置密码
进入redis-cli 客户端
1. auth 密码
2. config set requirepass ''
3. exit