Neo4j Desktop 2 简介
Neo4j Desktop 是 Neo4j 官方推出的图形化管理工具,专为开发者和数据科学家设计。它提供了一个一体化的本地开发环境,支持快速创建、测试和管理图数据库实例。
核心优势
- 一体化开发环境:集成数据库实例管理、查询编辑、数据可视化和扩展管理。
- 本地开发友好:无需配置复杂的服务器环境,在本地机器即可快速搭建图数据库。
- 多版本管理:支持同时管理多个不同版本的 Neo4j 数据库实例。
- 插件生态:内置插件市场,方便安装常用扩展。
- 项目管理:以项目为单位组织数据库、查询和配置,保持环境隔离。
适用场景
- 图数据库开发:为应用程序提供本地图数据库环境。
- 本地测试:在部署到生产前进行数据模型测试和查询验证。
- 教育与学习:适合学习 Cypher 查询语言和图数据库概念。
安装与配置
环境要求
Neo4j 基于 Java 运行,因此需要预先安装 JDK。
- 桌面版(Desktop):建议安装 JDK SE14 及以上版本,通常不需要额外配置环境变量。
- 社区版/旧版本:部分旧版本对 Java 版本有上限要求(如 SE15 以下),可能需要手动配置路径。若遇到兼容性问题,可前往 Oracle 官网下载历史版本。
注意:JDK 下载通常需要注册账号,注册后可免费下载历史版本。
下载安装
访问 Neo4j 官网下载页面,选择对应的操作系统安装包。
- 进入下载中心,选择
Desktop标签。 - 填写必要信息后自动开始下载安装包。
- 根据系统提示完成安装。
目前主流版本为 2.0.x,相比旧版(如 1.6)在界面和功能上有较大更新,但教程资源相对较少,初次使用可能会遇到一些配置问题。
创建并管理数据库
新建项目与实例
启动 Neo4j Desktop 后,点击 Create a Project 创建新项目。
- 输入项目名称和密码。
- 默认数据库用户名为
neo4j,密码即为创建项目时设置的密码。 - 创建完成后,项目状态显示为
STOPPED。
启动与连接
点击项目卡片上的启动按钮,等待服务就绪。
- 启动弹窗:首次启动会弹出控制台窗口,可选择隐藏。
- 数据库列表:在
Database面板中查看实例,默认包含一个neo4j实例。 - 创建新库:右键点击实例或选择
Create Database可添加新的知识图谱实例。 - 连接方式:点击
Connect可打开查询编辑器(Query Editor)或探索视图(Explore)。
构造知识图谱
Cypher 基础操作
在查询编辑器中输入 Cypher 语句来构建数据。
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
查询操作
基础查询
// 查询所有人物
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
复杂查询示例
// 查找朋友的朋友(两步以内)
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
数据导入与外部连接
CSV 文件导入
Neo4j Desktop 支持通过 UI 直接导入 CSV 文件。
- 在数据库管理界面选择
Import。 - 上传 CSV 文件并映射字段。
- 执行导入任务,系统将自动解析节点和关系。
Python 代码连接
使用 Python 的 neo4j 驱动可以远程操作数据库。
from neo4j import GraphDatabase
uri = "neo4j://127.0.0.1:7687"
driver = GraphDatabase.driver(uri, auth=("neo4j", "你的项目密码"))
with driver.session() as session:
result = session.run("MATCH (n) RETURN n LIMIT 5")
for record in result:
print(record['n'])
注意:
uri格式为neo4j://IP:端口。auth中的用户名默认为neo4j,密码为创建项目时设置的密码。
浏览器访问
除了 Desktop 客户端,还可以直接使用浏览器访问。
- 访问
http://localhost:7474。 - 输入用户名和密码登录。
- 在网页端同样可以使用查询编辑器或右键展开节点查看关系。
如果习惯旧版界面,可在 Desktop 设置中切换回经典模式,功能基本一致。

