简介本资源为 Neo4j 企业版 5.15.0 的 Windows 安装包面向需要在本地搭建图数据库环境的中高级开发者、数据工程师及运维人员尤其适合对高并发、集群部署与容灾备份有实际需求的商业项目场景。压缩包共 205 个文件约 107.64MB以 178 个 jar 核心依赖为主辅以 bat、ps1 启动与管理脚本、conf 配置文件、exe 服务注册程序及 cer 证书等覆盖从服务安装到日常运维的完整组件。目前已有 835 人学习下载。相比社区版企业版在容量、并发、容灾、热备、性能与插件支持上差异显著无节点与关系数量上限可部署高可用集群或因果集群支持不停机热备与增量备份能调用全部 CPU 内核并可使用 Bloom、ETL 等工具。读者可借此快速完成 Windows 环境下的企业级图数据库部署与验证为后续集群搭建、性能调优和故障排查提供可靠基础。1. 装 Neo4j 企业版 5.15.0 之前先把 Windows 环境这关过了很多人第一次在 Windows 上装 Neo4j 企业版 5.15.0都是被“企业版”三个字带偏的——以为下载完双击 exe 就完事结果卡在 JDK 版本、服务注册、初始密码这三道坎上。我见过最典型的翻车现场是装完发现浏览器打不开 7474 端口日志里报的是 Java 版本不匹配回头重装又发现旧的数据目录没清干净服务起不来。这套环境在 Windows 上其实不算复杂但版本对应关系比社区版严格得多装之前不把 JDK、端口、目录规划列清楚后面每一步都是坑。这篇记录适合两类人一类是第一次在 Windows 上部署 Neo4j 企业版、需要一份能照着走的清单另一类是从社区版迁过来、想搞清楚企业版多出来的配置项到底怎么填。下面按“装什么版本 → 怎么装 → 怎么配 → 坏了怎么救 → 怎么验证”的顺序走一遍。2. 版本与依赖核对JDK、端口、目录一个都不能错2.1 Neo4j 5.15.0 对 JDK 的硬性要求Neo4j 5.x 全系要求 JDK 17企业版 5.15.0 也不例外。Windows 上最容易踩的坑是系统里同时装了 JDK 8 和 JDK 17环境变量JAVA_HOME指向了 8启动脚本不报错但服务起不来。我一般会先确认当前默认 Java 版本java -version如果输出里是1.8.0_xxx说明默认指向 JDK 8需要手动把JAVA_HOME改到 JDK 17 的安装路径。常见做法是装一个 Eclipse Temurin 17 或者 Oracle JDK 17然后把系统环境变量里的JAVA_HOME指向它Path里加上%JAVA_HOME%\bin。改完重开一个命令行窗口再执行java -version确认输出是17.0.x才算过。提示Neo4j 5.15.0 的启动脚本会读JAVA_HOME不会自动去找系统里最新的 JDK。如果JAVA_HOME没设脚本会直接报 “Unable to find Java” 然后退出。2.2 端口占用与目录规划Neo4j 默认用三个端口7474HTTP、7473HTTPS、7687Bolt。Windows 上 7474 经常被其他 Web 服务占掉装之前先查一遍netstat -ano | findstr 7474 7473 7687有输出就说明被占了要么停掉占用进程要么在配置文件里改端口。目录方面我习惯把安装目录和数据目录分开安装目录放D:\neo4j-enterprise-5.15.0数据目录单独指到D:\neo4j-data。这样以后升级版本时直接换安装目录、数据目录不动迁移成本最低。企业版默认会把 data、logs、import、plugins 都放在安装目录下如果不改升级时容易把数据和程序混在一起清理起来很麻烦。2.3 企业版和社区版在 Windows 上的安装差异社区版在 Windows 上可以用 Desktop 或者 zip 包企业版 5.15.0 官方只提供 zip 包没有 exe 安装程序。这意味着所有服务注册、环境变量、启动参数都得手动来。企业版多出来的东西主要是多数据库支持、细粒度权限、集群配置项、热备份工具。如果只是单机跑社区版够用但如果要用到多数据库或者后面要接备份策略企业版这些配置项在neo4j.conf里是绕不开的。下面安装步骤按 zip 包手动部署来写。3. 下载与安装从 zip 解压到服务注册3.1 获取企业版 5.15.0 安装包企业版安装包需要从官方渠道获取拿到的是一个 zip 压缩包文件名类似neo4j-enterprise-5.15.0-windows.zip。下载完先核对文件大小企业版比社区版大不少因为包含了额外的企业级功能模块。解压时注意两点一是路径不要带中文和空格二是解压目标目录要有写权限。我一般直接解压到D:\neo4j-enterprise-5.15.0解压完目录结构里应该有bin、conf、data、lib、plugins这几个关键目录。# 解压后先看一眼目录结构 dir D:\neo4j-enterprise-5.15.0如果解压出来多了一层同名目录比如D:\neo4j-enterprise-5.15.0\neo4j-enterprise-5.15.0要把里层的内容移到外层否则后面配服务路径时会多一层容易写错。3.2 配置 JAVA_HOME 与初始化数据目录解压完先别急着启动先把JAVA_HOME确认一遍然后在neo4j.conf里把数据目录指出来。打开conf\neo4j.conf找到这几行# 数据目录默认在安装目录下建议改到独立盘 server.directories.dataD:/neo4j-data/data # 日志目录 server.directories.logsD:/neo4j-data/logs # 导入目录后面批量导数据用 server.directories.importD:/neo4j-data/import路径用正斜杠/或者双反斜杠\\不要用单反斜杠否则配置文件解析会出问题。改完保存然后手动创建这几个目录mkdir D:\neo4j-data\data mkdir D:\neo4j-data\logs mkdir D:\neo4j-data\import这一步不做的话第一次启动时 Neo4j 会自己在安装目录下建 data 和 logs后面再改路径就要迁移数据多一道手续。3.3 注册 Windows 服务并设置开机自启企业版在 Windows 上推荐注册成服务这样开机自启、后台运行都方便。用管理员身份打开命令行进到bin目录cd D:\neo4j-enterprise-5.15.0\bin neo4j.bat install-service执行完会提示服务安装成功。然后启动服务neo4j.bat start启动过程会写日志到D:\neo4j-data\logs\neo4j.log如果启动失败先看这个日志的最后几十行。常见失败原因就三个JAVA_HOME不对、端口被占、数据目录没权限。服务注册后可以用services.msc看到名为Neo4j的服务启动类型默认是手动需要改成自动的话在服务属性里改。注意如果之前装过社区版并且注册过服务要先neo4j.bat uninstall-service把旧服务卸掉否则新服务注册会冲突。4. 关键配置内存、认证与远程访问4.1 内存参数怎么给才不浪费Neo4j 企业版默认的堆内存和页面缓存偏保守Windows 上如果机器内存够建议手动调。打开neo4j.conf找到内存相关配置# JVM 堆初始值和最大值建议设成一样避免动态扩容 server.memory.heap.initial_size4G server.memory.heap.max_size4G # 页面缓存用来缓存图数据建议给到物理内存的 50% 左右 server.memory.pagecache.size4G这三个值怎么定如果机器是 16G 内存堆给 4G、页面缓存给 6G 到 8G 比较合适如果数据量小堆 2G、页面缓存 2G 也能跑。关键是堆最大值不要超过物理内存的 50%页面缓存和堆加起来不要超过物理内存的 80%否则 Windows 会频繁换页性能反而下降。改完内存参数必须重启服务才生效。4.2 初始密码与认证配置Neo4j 5.15.0 首次启动后默认用户是neo4j密码也是neo4j但第一次登录会强制改密码。如果是在服务器上部署不想用交互式改密码可以在配置文件里关掉强制改密# 首次登录不强制改密码方便自动化部署 dbms.security.auth_enabledtrue # 初始密码仅首次启动有效 dbms.security.initial_passwordYourStrongPassword更常见的做法是启动后用cypher-shell改bin\cypher-shell.bat -u neo4j -p neo4j # 登录后会提示改密码输入新密码即可如果忘了密码可以临时把dbms.security.auth_enabled改成false重启后免密登录进去改完密码再改回来。这个操作相当于后悔药但改完记得把认证重新打开否则数据库等于裸奔。4.3 远程访问与防火墙放行默认配置下 Neo4j 只监听 localhost局域网内其他机器访问不了。要开放远程访问改这两行# 监听所有网卡 server.default_listen_address0.0.0.0 # Bolt 连接地址 server.bolt.listen_address:7687 # HTTP 连接地址 server.http.listen_address:7474改完重启服务然后在 Windows 防火墙里放行 7474 和 7687 端口netsh advfirewall firewall add rule nameNeo4j HTTP dirin actionallow protocolTCP localport7474 netsh advfirewall firewall add rule nameNeo4j Bolt dirin actionallow protocolTCP localport7687放行之后用另一台机器浏览器访问http://服务器IP:7474能打开 Neo4j Browser 就说明远程访问通了。如果打不开先在本机telnet 服务器IP 7474试一下不通就是防火墙或者监听地址没配对。5. 避坑与排查Windows 上最容易翻车的五个点5.1 启动报 “Unable to find Java” 或版本不匹配现象执行neo4j.bat start后命令行一闪而过日志里写Unable to find Java或者Unsupported Java version。原因JAVA_HOME没设或者指向了 JDK 8。解决确认JAVA_HOME指向 JDK 17 的根目录不是bin目录。改完环境变量后必须重开命令行窗口旧窗口读的还是旧变量。如果系统里有多个 JDK可以在neo4j.conf里直接指定 Java 路径dbms.jvm.additional-Djava.homeD:/jdk-17这样就不依赖系统环境变量了。5.2 服务启动后浏览器打不开 7474现象服务显示已启动但浏览器访问localhost:7474连接被拒。原因监听地址还是默认的 localhost或者端口被其他程序占了。解决先netstat -ano | findstr 7474看端口有没有在监听如果没有检查server.default_listen_address是不是0.0.0.0如果有监听但访问不了检查防火墙。还有一种情况是 HTTPS 端口 7473 和 HTTP 端口 7474 配反了浏览器默认走 HTTP如果只开了 HTTPS 也会连不上。5.3 数据目录权限不足导致启动失败现象日志里报Permission denied或者Access is denied指向 data 目录。原因Neo4j 服务默认以本地系统账户运行如果数据目录在用户目录下或者权限没给够服务账户写不进去。解决把数据目录放到非系统盘根目录比如D:\neo4j-data然后给Everyone或者NETWORK SERVICE读写权限。右键目录 → 属性 → 安全 → 编辑 → 添加 → 输入Everyone→ 勾选完全控制。生产环境不建议给 Everyone可以给NETWORK SERVICE或者专门的服务账户。5.4 升级或重装后旧数据不兼容现象换了新版本安装包启动时报Database failed to start或者Store version mismatch。原因Neo4j 5.15.0 的数据格式和旧版本不兼容直接拿旧 data 目录启动会失败。解决升级前先用neo4j-admin database dump把数据导出来新版本启动后用neo4j-admin database load导回去。如果是测试环境直接清空 data 目录重新初始化也行但生产环境一定要先备份。我一般会在升级前把整个 data 目录复制一份出问题直接回滚。5.5 内存参数改完服务起不来现象调大堆内存后服务启动失败日志里报Could not reserve enough space。原因堆最大值设得太大超过了系统可用内存或者 32 位 JDK 有内存上限。解决确认用的是 64 位 JDK 17然后把堆最大值降到物理内存的 50% 以内。Windows 上还要注意页面文件设置如果页面文件太小JVM 申请大内存也会失败。改小内存参数后重启能起来再逐步往上调找到稳定值。6. 装完怎么验证从服务状态到 Cypher 查询走一遍装完不验证等于没装。我一般按四步走先看服务状态再看端口监听然后登录 Browser最后跑一条 Cypher 确认数据读写正常。第一步确认服务状态neo4j.bat status输出Neo4j is running说明服务进程在。如果显示Neo4j is not running直接去看logs\neo4j.log最后 50 行。第二步确认端口监听netstat -ano | findstr 7474 7687两个端口都应该有LISTENING状态。如果 7474 没有检查server.http.enabled是不是true如果 7687 没有检查server.bolt.enabled。第三步浏览器访问http://localhost:7474用neo4j和改过的密码登录。登录成功后应该能看到 Neo4j Browser 的查询界面顶部显示连接的数据库是neo4j。第四步跑一条 Cypher 验证读写// 创建两个节点和一条关系 CREATE (a:Person {name: Alice})-[:KNOWS]-(b:Person {name: Bob}) RETURN a, b; // 查询验证 MATCH (a:Person)-[r:KNOWS]-(b:Person) RETURN a.name, type(r), b.name;如果第一条返回创建成功第二条返回Alice | KNOWS | Bob说明数据库读写都正常。然后删掉测试数据MATCH (a:Person)-[r:KNOWS]-(b:Person) DELETE r, a, b;验证完这四步这套 Neo4j 企业版 5.15.0 在 Windows 上就算真正跑通了。从那以后我每次装完 Neo4j都会强制走一遍这四步验证尤其是端口监听和 Cypher 读写光看服务状态说明不了问题。希望帮到你。本文还有配套的精品资源点击获取