我正在开发已经安装了redis的mac上。默认情况下,它没有redis.conf
,因此在我$ redis-server
# Warning: no config file specified, using the default config. In order to specify a config file use 'redis-server /path/to/redis.conf'
我正在尝试使用redis-py
并拥有以下
import redis
r = redis.Redis('localhost')
r.set('foo','bar')
r.get('foo')
但出现以下错误
redis.exceptions.ResponseError: operation not permitted
我也尝试在终端$ redis-cli ping
,但后来我收到以下错误
(error) ERR operation not permitted
我想因为没有redis.conf
默认设置没有密码吗?无论如何,我还尝试创建redis.conf
$ echo "requirepass foobared" >> redis.conf
$ redis-server redis.conf
然后在另一个窗口
$ redis-cli
$ redis 127.0.0.1:6379> AUTH foobared
(error) ERR invalid password
还将python脚本的第二行修改为
r = redis.StrictRedis(host='localhost', port=6379, db=0, password='foobared')
然后我得到了
redis.exceptions.ResponseError: invalid password
我能做错什么?感谢
答案 0 :(得分:0)
没有任何redis.conf文件,Redis使用默认的内置配置。因此,在服务器目录中创建默认数据库文件(dump.rdb)和仅附加文件。也许运行Redis的用户对此目录没有写入权限。
所以你要么给他许可,要么用配置文件定义另一个工作目录。
你会找到redis 2.6 here的默认配置文件 您必须在文件中修改此行:
# The working directory.
dir ./