1. Neo4j Desktop 2 简介
1.1 核心功能与优势
Neo4j Desktop 2 是 Neo4j 官方推出的图形化数据库管理工具,专为开发者和数据科学家设计。
主要优势包括:
- 一体化开发环境:集成了数据库实例管理、查询编辑、数据可视化和扩展管理
- 本地开发友好:支持在本地机器上快速创建和测试图数据库实例
- 多版本管理:可同时管理多个 Neo4j 数据库版本
- 插件生态系统:内置插件市场,轻松安装常用扩展
- 项目管理:以项目为单位组织数据库、查询和配置
1.2 适用场景
- 图数据库开发:为应用程序开发提供本地图数据库环境
- 本地测试:在部署到生产环境前进行数据模型测试和查询验证
- 项目管理:管理多个图数据库项目,保持环境隔离
- 教育与学习:学习 Cypher 查询语言和图数据库概念
2. 安装 Neo4j Desktop 2
需要安装 Java(注意桌面版和社区版对 Java 都有要求)。
- 桌面版:建议 JDK 14 以上,不需要配置环境和路径。
- 社区版:JDK 15 以下,需要自己手动配置环境和路径。可以去 Java 官网下载历史版本。
历史版本下载需要官网注册,注册成功后可以免费下载。
方法一:通过官网下载
访问 https://neo4j.com/download 点击桌面版下载。

跳转到下载页面,填写信息即可自动下载安装包。

方法二:通过主站下载
访问 https://neo4j.com/ 进入下载中心。

找到对应操作系统的安装包,可下载最新版本或旧版本。


3. 创建并管理本地图数据库
3.1 新建数据库实例
点击创建一个项目。

填写项目名称与密码后点击创建,这里可以看到 database user 默认为 neo4j。
3.2 启动与停止数据库
项目默认为关闭状态(STOPPED),点击运行按钮即可启动。

启动时会弹出弹窗,关闭弹窗项目就会结束运行,需要启动时可以先隐藏。

此时可以点开 database 中查看数据库,默认只有 neo4j 一个,可以点击 create database 创建多个知识图谱。然后点击 connect 可以查看 query 和 explore。

4. 构造知识图谱的方法
4.1 在查询编辑器中输入代码

基础操作
(1)创建节点
// 创建人物节点
CREATE (p:Person {name: 'Alice', age: 30, occupation: 'Engineer'})
// 创建多个节点
CREATE
(p1:Person {name: 'Bob', age: 25}),
(p2:Person {name: 'Charlie', age: 35}),
(c:Company {name: 'Tech Corp', industry: 'Technology'})
(2)创建关系
// 先匹配节点,然后创建关系
MATCH
(a:Person {name: 'Alice'}),
(b:Person {name: 'Bob'})
CREATE (a)-[:FRIENDS_WITH {since: '2023-01-01'}]->(b)
// 创建节点和关系同时进行
CREATE
(alice:Person {name: 'Alice'})-[:WORKS_AT {position: 'Developer'}]->(company:Company {name: 'Neo4j Inc'})
(3)添加/更新属性
// 添加属性
MATCH (p:Person {name: 'Alice'})
SET p.email = '[email protected]'
// 更新多个属性
MATCH (p:Person {name: 'Bob'})
SET p.age = 26, p.department = 'Engineering'
// 添加标签
MATCH (p:Person {name: 'Charlie'})
SET p:Employee:Manager
查询操作
(1)MATCH 基础查询
// 查询所有人物
MATCH (p:Person)
RETURN p
// 查询特定属性
MATCH (p:Person)
WHERE p.age > 25
RETURN p.name, p.age
// 查询关系和路径
MATCH (p1:Person)-[r:FRIENDS_WITH]->(p2:Person)
RETURN p1.name, p2.name, r.since
(2)复杂查询示例
// 查找朋友的朋友
MATCH (p:Person {name: 'Alice'})-[:FRIENDS_WITH*2]->(friendOfFriend)
RETURN friendOfFriend.name
// 聚合查询
MATCH (p:Person)
RETURN p.occupation, COUNT(*) as count, AVG(p.age) as avgAge
// 路径查询
MATCH path = (start:Person)-[:FRIENDS_WITH|WORKS_AT*1..3]->(end)
WHERE start.name = 'Alice'
RETURN path
4.2 通过 Import 导入 CSV 等文件


4.3 使用 Python 代码连接
使用代码连接 Neo4j。
注意事项:
neo4j://127.0.0.1:7687是项目上的 URL。auth=("neo4j", "密码")这是用户名 database user 与创建项目时设置的密码。

4.4 网页版连接
在浏览器输入 http://localhost:7474,可以连接 Neo4j 网页版,输入密码即可登录。

然后通过右键可以使用 expand 查看相关节点。


