Redis连接错误10061问题咨询及新手学习资源请求
Redis连接错误10061:原因、解决方法及新手入门资源
错误含义
redis.exceptions.ConnectionError: Error 10061 connecting to localhost:6379. No connection could be made because the target machine actively refused it 这个错误直白来说就是:你的Celery或Gunicorn程序尝试连接本地6379端口的Redis服务,但Redis要么没在运行,要么明确拒绝了连接请求。
常见原因
- Redis服务未设置开机自启,每次关闭PyCharm、重启电脑后,Redis进程会自动终止
- Redis配置里绑定了非
localhost的IP,导致本地程序无法连接 - Redis设置了访问密码,但你的Celery/Gunicorn配置未同步填写密码,被服务拒绝连接
- 6379端口被其他程序占用,Redis无法正常启动
- 系统防火墙或第三方安全软件拦截了6379端口的连接请求
解决方法
1. 设置Redis开机自动启动
- Windows:右键以管理员身份打开命令提示符,先执行
redis-server --service-install redis.windows.conf --loglevel verbose完成服务安装,再用redis-server --service-start启动服务,之后开机Redis会自动运行 - Linux:执行
systemctl enable redis-server设置开机自启,用systemctl start redis-server启动服务
2. 检查Redis配置文件
- 找到Redis配置文件(Windows一般为
redis.windows.conf,Linux为/etc/redis/redis.conf) - 找到
bind配置项,修改为bind 127.0.0.1或直接注释掉(允许所有IP连接,适合测试环境) - 如果Redis设置了密码,找到
requirepass项记录密码,然后在Celery配置中更新 broker 地址:broker_url = 'redis://:你的密码@localhost:6379/0',Gunicorn对应配置也要同步添加密码
3. 排查端口占用情况
- Windows:命令提示符执行
netstat -ano | findstr :6379,找到占用端口的PID,打开任务管理器结束对应进程后重启Redis - Linux:执行
lsof -i :6379找到占用进程,用kill -9 进程PID终止后重启Redis
4. 解除防火墙拦截
- 临时关闭Windows防火墙或第三方安全软件,测试是否能正常连接Redis;如果可以,给Redis添加防火墙允许规则,开放6379端口的入站/出站连接
5. 验证Redis运行状态
- 打开终端执行
redis-cli ping,如果返回PONG,说明Redis服务正常运行;如果报错,说明服务未启动或配置存在问题
新手入门资源
- Redis官方入门指南:从安装、基础命令到核心特性,讲解细致,适合从零开始搭建Redis环境
- Celery官方新手教程:一步步教你搭建Celery+Redis的任务队列,附带完整示例代码,容易上手
- 《Redis实战》:书籍,用实际业务案例讲解Redis的各种使用场景,新手能快速理解Redis的实用价值
- Celery中文文档:翻译准确,内容贴合国内开发者习惯,英文基础弱的新手可以优先参考
内容的提问来源于stack exchange,提问作者Malla Raraju
相关产品推荐
相关产品推荐

