eXist-db是支持XQuery等标准的开源原生XML数据库,安装需JDK 11+、解压即用,启动后访问http://localhost:8080,初始账号admin无密码,可通过Web界面或REST API管理XML数据。

eXist-db 是一个成熟的开源原生 XML 数据库,支持 XQuery、XPath、XSLT 和 RESTful 接口,适合存储、查询和管理结构化或半结构化的 XML 文档。安装和使用并不复杂,关键在于环境准备、启动服务与基础操作三步到位。
下载与安装 eXist-db
官方提供开箱即用的压缩包,无需编译,也无需额外安装 Java(但需系统已配置 JDK 11 或更高版本)。
- 访问 https://exist-db.org/exist/apps/public/download,下载最新稳定版(如
exist-db-exist-username_0-6.4.0.zip) -
解压到任意目录(例如
/opt/exist-db或C:\exist-db) - 确认 Java 环境:终端运行
java -version,输出应为 JDK 11+(JRE 不够,必须是 JDK) - 进入解压目录下的
bin文件夹,执行启动脚本:
• Linux/macOS:运行./startup.sh
• Windows:双击startup.bat或命令行运行
首次启动与 Web 管理界面
启动成功后,默认监听 http://localhost:8080,自动打开浏览器跳转至管理后台(若未自动打开,手动访问即可)。
- 初始管理员账号为
admin,密码为空(首次登录后建议立即修改) - 主界面包含多个功能模块:“Dashboard”查看状态,“eXide”是内置 XQuery 编辑器,“Collection Browser”用于浏览/上传 XML 文档
- 默认数据库中已预置示例数据(如
/db/examples/shakespeare),可直接查询体验
导入 XML 数据与简单查询
可通过 Web 界面或命令行快速加载文档,然后用标准 XQuery 检索。
- 在 “Collection Browser” 中,点击右上角 “+” 创建新集合(如
/db/mydata) - 选中该集合,点击 “Upload” 上传本地 XML 文件(如
books.xml) - 切换到 “eXide”,输入查询语句,例如:
xquery version "3.1";
for $b in collection("/db/mydata")//book
return $b/title - 点击 “Run” 即可返回所有
元素内容
常用开发与集成方式
eXist-db 不仅能当独立数据库用,还支持多种接入方式,适配不同开发场景。
-
REST API:直接通过 HTTP 访问,如
GET http://localhost:8080/exist/rest/db/mydata/books.xml获取文档 - XML-RPC / WebDAV:适用于脚本化上传/同步,适合 CI/CD 或批量处理
-
Java 嵌入式使用:将
exist-embedded.jar加入项目依赖,调用DatabaseManager.getDatabase(...)实例化连接 -
Standalone 模式:适合测试或轻量应用,启动时加参数
-Dexist.home=/path/to/exist指定配置路径
不复杂但容易忽略:每次升级前备份 data 和 conf 目录;生产环境务必设置强密码并关闭默认 demo 集合权限。










