2 8*_*2 8 6 python database-connection redis redis-py
我在服务器中运行代码时遇到此错误,我的环境是debian,并且 Python2.7.3
Traceback (most recent call last):
File "fetcher.py", line 4, in <module>
import mirad.fetcher_tasks as tasks
File "/home/mirad/backend/mirad/fetcher_tasks.py", line 75, in <module>
redis_keys = r.keys('*')
File "/home/mirad/backend/venv/local/lib/python2.7/site-packages/redis/client.py", line 863, in keys
return self.execute_command('KEYS', pattern)
File "/home/mirad/backend/venv/local/lib/python2.7/site-packages/redis/client.py", line 534, in execute_command
connection.send_command(*args)
File "/home/mirad/backend/venv/local/lib/python2.7/site-packages/redis/connection.py", line 532, in send_command
self.send_packed_command(self.pack_command(*args))
File "/home/mirad/backend/venv/local/lib/python2.7/site-packages/redis/connection.py", line 508, in send_packed_command
self.connect()
File "/home/mirad/backend/venv/local/lib/python2.7/site-packages/redis/connection.py", line 412, in connect
raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error -2 connecting to localhost:6379. Name or service not known.
Run Code Online (Sandbox Code Playgroud)
当我运行redis-cli它正常工作没有任何错误:
$ redis-cli
127.0.0.1:6379>
Run Code Online (Sandbox Code Playgroud)
您似乎正在尝试使用当前Debian环境无法识别的服务器连接redis.从Traceback,我看到你正在尝试使用主机名连接为localhost,
r_server=redis.Redis(host="localhost",port=6379)
Run Code Online (Sandbox Code Playgroud)
但是,你的系统无法理解"localhost",在hosts文件中输入,即说127.0.0.1是localhost.在/ etc/hosts中添加以下代码
127.0.0.1 localhost
Run Code Online (Sandbox Code Playgroud)
否则使用以下命令连接redis;
r_server=redis.Redis(host="localhost",port=6379)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11610 次 |
| 最近记录: |