是的,您可以从Windows的wsl使用redis。首先,确保已安装并启动Redis服务:
sudo apt-get install redis-server
sudo systemctl enable redis-server.service
如果您已经在Windows上运行了Redis服务器,则需要在/etc/redis/redis.conf中编辑port指令(例如,到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/
):
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服务——这就是我发现需要指定不同端口的原因;-)