是的,您可以从 Windows 的 wsl 使用 redis。首先,确保您已经安装并启动了 redis 服务:
sudo apt-get install redis-server
sudo systemctl enable redis-server.service
如果您已经在 Windows 上运行 Redis 服务器,则需要编辑 /etc/redis/redis.conf 中的端口指令(例如编辑为 7379,就像我对下面的命令所做的那样)。
然后启动服务
sudo service redis-server start
然后运行redis-cli
并发出monitor
命令(您可以跳过-p 7379
如果您使用默认端口):
bp@bjorn8:~$ redis-cli -p 7379
127.0.0.1:6379> monitor
OK
现在,从 Windows 命令提示符处,从 pypi 安装 redis 模块(https://pypi.org/project/redis/ https://pypi.org/project/redis/):
pip install redis
然后启动 python 并发出测试命令(如果您使用默认端口,请再次使用 6379):
>>> import redis
>>> cn = redis.Redis('localhost', 7379, 0)
>>> cn.keys("*")
[]
在您的 wsl 会话中,您现在应该看到类似以下内容:
1558196107.718695 "KEYS" "*"
注意:redis对于服务器在哪里并不模糊。如果您在 Windows 上安装了 cli 工具,则可以从 dos 向在 wsl 上运行的服务器发出命令:
c:\srv> redis-cli -p 7379
redis 127.0.0.1:7379> keys "*"
(empty list or set)
redis 127.0.0.1:7379>
反之亦然(wsl 上的 redis-cli 会很乐意连接到 Windows 上运行的 redis 服务——这就是我发现我需要指定不同端口的方式;-)