You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将嵌入式Neo4j 3.3.5通过Neo4j Desktop作为远程数据库访问

怎么让嵌入式Neo4j 3.3.5支持Neo4j Desktop远程访问

嘿,我来帮你搞定这个需求!要让你的嵌入式Neo4j能被Neo4j Desktop远程连接,核心是给嵌入式库开启Bolt连接器(Neo4j的远程通信协议),然后在Desktop里配置连接信息就行。下面是一步步的操作:

1. 修改Spring Boot项目的Neo4j初始化代码

原来的代码只是单纯启动嵌入式数据库,没有开启远程访问的配置。你需要添加Neo4j的配置参数,启用Bolt连接器:

import org.neo4j.graphdb.GraphDatabaseService
import org.neo4j.graphdb.factory.GraphDatabaseFactory
import org.neo4j.kernel.configuration.Config
import java.io.File
import javax.annotation.PreDestroy

// 你的类内代码
private val curdir = System.getProperty("user.dir")
// 配置远程连接参数
val neo4jConfig = Config.builder()
    // 启用Bolt连接器(必须开启才能远程访问)
    .set("dbms.connector.bolt.enabled", "true")
    // 设置Bolt监听地址和端口,默认是localhost:7687
    .set("dbms.connector.bolt.listen_address", "localhost:7687")
    // 测试阶段先关闭认证,后续可开启(默认是开启状态)
    .set("dbms.security.auth.enabled", "false")
    .build()

// 用带配置的方式初始化嵌入式数据库
val graphDb: GraphDatabaseService = GraphDatabaseFactory()
    .newEmbeddedDatabaseBuilder(File("${curdir}/database"))
    .setConfig(neo4jConfig)
    .newGraphDatabase()

// 项目关闭时务必关闭数据库,避免文件损坏
@PreDestroy
fun shutdownNeo4j() {
    graphDb.shutdown()
}

关键参数说明:

  • dbms.connector.bolt.enabled: 必须设为true,开启远程连接的Bolt协议支持
  • dbms.connector.bolt.listen_address: 指定监听的IP和端口,默认localhost:7687,如果端口被占用可以改成其他值(比如7688)
  • dbms.security.auth.enabled: 暂时关闭认证方便测试,之后可以改成true,并设置默认用户名neo4j的密码(第一次启动会提示设置,也能通过dbms.security.auth_initial_password参数预先配置)

2. 启动你的Spring Boot项目

确保项目正常启动,没有报错。可以检查日志里有没有类似Bolt connector enabled on localhost:7687的信息,确认Bolt连接器已经成功启动。

3. 在Neo4j Desktop 1.0.24里配置远程连接

打开Neo4j Desktop,按照以下步骤操作:

  • 点击左侧菜单栏的Add按钮,选择Remote Connection
  • 在弹出的配置窗口里填写:
    • Name: 给这个连接起个好记的名字(比如“我的嵌入式Neo4j”)
    • URI: 填写bolt://localhost:7687(如果刚才改了端口,就对应改成新的端口)
    • User / Password: 如果刚才关闭了认证,这两项可以留空;如果开启了认证,就填neo4j和你设置的密码
  • 点击Connect,如果配置正确,就能成功连接到你的嵌入式数据库了!

4. 验证和使用

连接成功后,你可以:

  • 点击Open打开Neo4j Browser,在里面运行Cypher查询查看节点关系
  • 直接在Browser里用Cypher语句添加新节点(比如CREATE (n:TestNode {name: '新节点'}) RETURN n)
  • 用可视化界面拖拽查看数据库的节点和关系

注意事项

  • 版本兼容性: 你的Neo4j Desktop 1.0.24和嵌入式Neo4j 3.3.5版本匹配,不用担心协议不兼容的问题
  • 端口占用: 如果启动项目时提示7687端口被占用,可以换个端口(比如7688),同时修改代码里的listen_address和Desktop里的URI
  • 数据库路径: 确认System.getProperty("user.dir")指向的是正确的目录,确保数据库文件存在。可以打印curdir的值来验证:println("数据库路径:${curdir}/database")
  • 数据库关闭: 一定要在Spring Boot关闭时调用graphDb.shutdown(),否则可能导致数据库文件损坏

内容的提问来源于stack exchange,提问作者pbount

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:59:47