2

我不明白为什么 RedisGraph 命令“GRAPH.QUERY”不起作用,我已经使用本教程下载并安装了 Redis 。当我通过插入此命令测试 RedisGraph 时:

GRAPH.QUERY MotoGP "CREATE (:Rider {name:'Valentino Rossi'})-[:rides]->(:Team 
{name:'Yamaha'}), (:Rider {name:'Dani Pedrosa'})-[:rides]->(:Team {name:'Honda'}), (:Rider 
{name:'Andrea Dovizioso'})-[:rides]->(:Team {name:'Ducati'})"

它抛出错误:

(error) ERR unknown command 'GRAPH.QUERY'

以下是有关 RedisGraph 版本的信息:

127.0.0.1:6379> info
# Server
redis_version:4.0.9
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:9435c3c2879311f3
redis_mode:standalone
os:Linux 5.0.0-31-generic x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:7.4.0
process_id:912
run_id:68f78bd6961ba68707913a5e8db7ddce9ab5ae52
tcp_port:6379
uptime_in_seconds:17012
uptime_in_days:0
hz:10
lru_clock:11455406
executable:/usr/bin/redis-server
config_file:/etc/redis/redis.conf
4

2 回答 2

3

原因是:你只安装了 Redis。您还需要安装Redis Graph,它是 Redis 的一个单独模块。

建议:我建议您安装 Docker 然后运行,只需运行以下命令:

docker run -p 6379:6379 -it --rm redislabs/redisgraph

此外,请参阅以下网站以获取更多信息:

https://oss.redislabs.com/redisgraph/

于 2019-11-23T03:22:55.170 回答
1

这需要加载 Graph 模块,以便能够处理这个 Graph 特定的命令。这是通过修改配置文件 redis.conf 来完成的,该文件通常位于 /etc 或以下,具体取决于您的配置。如果您在该文件中插入命令 loadmodule,redis-server 将在服务器启动时加载 Graph 模块,您将拥有特定于 Graph 的命令,包括您提到的命令。

您将在https://redis.io/topics/config找到有关如何配置 Redis 实例的 h/l 文档,有关每个配置指令的全面信息是 Github 源代码中包含的配置示例的一部分(https:// /github.com/antirez/redis)。

关于如何从源代码构建 Graph 模块的信息可以在https://oss.redislabs.com/redisgraph/#building找到。

我还注意到您使用的是相当旧的 Redis 版本,这可能是由于您是从操作系统包存储库安装它的事实造成的。您可能需要考虑通过克隆上面提到的 Github 存储库来构建更新的版本。

于 2019-10-23T13:43:51.680 回答