安装或设置

OrientDB 有两个版本:

  • Community Edition 作为 Apache 2 许可下的开源项目发布 。此许可证允许开源和商业项目的无限制免费使用。

  • Enterprise Edition 是基于 Community Edition 构建的商业软件。Enterprise 由开发 OrientDB 引擎的同一团队开发。它是 Community Edition 的扩展,提供 Enterprise 功能,例如:

    • 不间断备份和还原
    • 预定的完整备份和增量备份
    • 查询分析器
    • 分布式群集配置
    • 度量标准记录
    • 带可配置警报的实时监控

Community Edition 可作为二进制包下载或作为 GitHub 上的源代码提供。Enterprise Edition 许可证包含在支持购买中。

先决条件

两个版本的 OrientDB 都可以在任何实现 Java 虚拟机(JVM)的操作系统上运行。这些例子包括:

  • Linux,所有发行版,包括 ARM(Raspberry Pi 等)
  • Mac OS X.
  • Microsoft Windows,95 / NT 及更高版本
  • Solaris
  • HP-UX
  • IBM AIX

OrientDB 需要 Java 1.7 或更高版本。

:在 OSGi 的容器,OrientDB 使用所提供的 ConcurrentLinkedHashMap 实现 concurrentlinkedhashmap 创建基于 LRU 缓存。该库主动使用 sun.misc 包,该包通常不作为系统包公开。要克服此限制,你应该将属性 org.osgi.framework.system.packages.extra 的值 sun.misc 添加到框架属性列表中。

它可能就像将参数传递给启动平台的 VM 一样简单:

$ java -Dorg.osgi.framework.system.packages.extra=sun.misc

使用 Docker

如果你的计算机中安装了 Docker,这是运行 OrientDB 的最简单方法。从命令行类型:

$ docker run -d –-name orientdb -p 2424:2424 -p 2480:2480
   -e ORIENTDB_ROOT_PASSWORD=root orientdb:latest

而不是 root,键入要使用的 root 密码。

二进制安装

OrientDB 提供了一个预编译的二进制包,用于在你的系统上安装数据库。根据你的操作系统,这是一个 tarred 或压缩包,其中包含运行 OrientDB 所需的所有相关文件。对于桌面安装,请转至 OrientDB 下载并选择最适合你系统的软件包。

在服务器安装上,你可以使用 wget 实用程序:

$ wget https://orientdb.com/download.php?file=orientdb-community-2.2.0.tar.gz

无论你使用的是 Web 浏览器还是 wget,都可以将下载的文件解压缩或解压缩到一个方便你使用的目录中(例如,Linux 上的/opt/orientdb/)。这将创建一个名为 orientdb-community-2.2.0 的目录,其中包含相关文件和脚本,你需要在系统上运行 OrientDB。

源代码安装

除了下载二进制包之外,你还可以选择使用 GitHub 上提供的 Community Edition 源代码编译 OrientDB。此过程要求你在系统上安装 GitApache Maven

要从源代码编译 OrientDB,请克隆 Community Edition 存储库,然后在新创建的目录中运行 Maven(mvn):

$ git clone https://github.com/orientechnologies/orientdb
$ git checkout develop
$ cd orientdb
$ mvn clean install

可以跳过测试:

$ mvn clean install -DskipTests

develop 分支包含下一版 OrientDB 的代码。稳定版本在主分支上标记。对于每个维护版本,OrientDB 都有自己的 hotfix 分支。在写这篇笔记的时候,分支的状态是:

  • 开发:下一个 3.0.x 版本正在进行中(3.0.x-SNAPSHOT)
  • 2.2.x:下一个 2.2.x 稳定版的热修复(2.2.x-SNAPSHOT)
  • 2.1.x:下一个 2.1.x 稳定版本的热修复(2.1.x-SNAPSHOT)
  • 2.0.x:下一个 2.0.x 稳定版的热修复(2.0.x-SNAPSHOT)
  • master 上的最后一个标签是 2.2.0

构建过程在本地 maven 存储库中安装所有 jar,并在 target 目录下的 distribution 模块下创建存档。在撰写本文时,从分支 2.1.x 开始构建:

$ls -l distribution/target/
total 199920
    1088 26 Jan 09:57 archive-tmp
     102 26 Jan 09:57 databases
     102 26 Jan 09:57 orientdb-community-3.0.0-SNAPSHOT.dir
48814386 26 Jan 09:57 orientdb-community-3.0.0-SNAPSHOT.tar.gz
53542231 26 Jan 09:58 orientdb-community-3.0.0-SNAPSHOT.zip
$

目录 orientdb-community-3.0.0-SNAPSHOT.dir 包含未压缩的 OrientDB 分发。如果你想参与,请查看 Contribute to OrientDB。

每个分发包都包含一个名为 GratefulDeadConcerts 的示例数据库。可以生成数据库:

$ cd distribution/
$ mvn  prepare-package
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building OrientDB Community Distribution ...
...
Importing GRAPHML database from ../graphdb/src/test/resources/graph-example-2.xml with options ()...
Done: imported 809 vertices and 8049 edges
Imported in 1141ms. Vertexes: 809

数据库在目标目录中创建

$ ls target/databases/
GratefulDeadConcerts/

更新权限

对于 Linux,Mac OS X 和基于 UNIX 的操作系统,你需要在从源代码编译后更改某些文件的权限。

$ chmod 755 bin/*.sh
$ chmod -R 777 config

这些命令更新 config/目录中文件的执行权限和 bin/中的 shell 脚本,确保你可以运行已编译的脚本或程序。

安装后任务

对于安装二进制文件的桌面用户,现在安装了 OrientDB,可以通过安装包 bin 目录中的 shell 脚本运行。对于服务器,为了管理 OrientDB 作为服务的数据库服务器,还需要执行一些其他步骤。此过程因操作系统而异。

  • 在 Unix,Linux 和 Mac OS X 上安装为服务
  • 在 Microsoft Windows 上安装为服务

升级

当需要升级到更新版本的 OrientDB 时,这些方法会根据你选择安装它的方式而有所不同。如果从二进制下载安装,请重复上面的下载过程并更新任何符号链接或快捷方式以指向新目录。

对于从源构建 OrientDB 的系统,请下载最新的源代码并从源代码编译。

$ git pull origin master
$ mvn clean install

请记住,从源代码构建时,可以使用 Git 切换分支以构建不同版本的 OrientDB。例如,

$ git checkout 2.2.x
$ mvn clean install

建立 2.2.x 分支,而不是 master

使用 OrientDB 构建单个可执行 jar

用于内部组件(如引擎,运算符,工厂)的 OrientDB 使用 Java SPI 服务提供程序接口 。这意味着 OrientDB 的 jar 包含 META-INF/services 中的文件,其中包含组件的实现。请记住,在构建单个可执行 jar 时,必须在不同的 orientdb - * .jar 中连接具有相同名称的文件内容。如果你使用的是 Maven Shade 插件 ,则可以使用 Service Resource Transformer来执行此操作。

其他资源

要了解有关如何在特定环境中安装 OrientDB 的更多信息,请参阅以下指南: