OrientDB有两个版本:
Community Edition在Apache 2许可下作为开源项目发布。该许可证允许开源和商业项目不受限制地免费使用。
企业版 是在社区版之上构建的商业软件。企业由开发OrientDB引擎的同一团队开发。它充当社区版的扩展,提供企业功能,例如:
不间断备份和还原
预定的完整和增量备份
查询分析器
分布式集群配置
指标记录
具有可配置警报的实时监控
Community Edition可以作为二进制软件包下载,也可以作为源代码在GitHub上获得。企业版许可证包含在支持购买中。
先决条件
两种版本的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并发链接哈希表提供的实现来创建基于LRU的缓存。该库积极使用sun.misc通常不作为系统软件包公开的软件包。为了克服此限制,您应该将org.osgi.framework.system.packages.extra具有值的属性添加sun.misc到框架属性列表中。
它可能很简单,只需将参数传递给启动平台的VM:
$ java -Dorg.osgi.framework.system.packages.extra=sun.misc
如果您的计算机中安装了Docker,则这是运行OrientDB的最简单方法。在命令行中输入:
$ docker run -d –-name orientdb -p 2424:2424 -p 2480:2480 -e ORIENTDB_ROOT_PASSWORD=root orientdb:latest
在“ root”而不是“ root”的地方,键入您要使用的root密码。
OrientDB提供了一个预编译的二进制软件包,可以在您的系统上安装数据库。根据您的操作系统,这是一个经过压缩或压缩的软件包,其中包含运行OrientDB所需的所有相关文件。对于桌面安装,请转到OrientDB下载,然后选择最适合您的系统的软件包。
在服务器安装上,可以使用该wget实用程序:
$ wget https://orientdb.com/download.php?file=orientdb-community-2.2.0.tar.gz
无论您使用的是Web浏览器,还是wget,将下载的文件解压缩或解压缩到方便使用的目录中(例如,/opt/orientdb/在Linux上)。这将创建一个orientdb-community-2.2.0包含相关文件和脚本的目录,您将需要在系统上运行OrientDB。
除了下载二进制包之外,您还可以选择从GitHub上的Community Edition源代码编译OrientDB。此过程要求您在系统上安装Git和Apache Maven。
要从源代码编译OrientDB,请克隆Community Edition存储库,然后mvn在新创建的目录中运行Maven():
$ git clone https://github.com/orientechnologies/orientdb $ git checkout develop $ cd orientdb $ mvn clean install
可以跳过测试:
$ mvn clean install -DskipTests
developer分支包含OrientDB下一版本的代码。稳定版本标记在master分支上。对于每个维护的版本,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)的修补程序
主机上的最后一个标签是2.2.0
构建过程将所有jar安装在本地maven存储库中,并distribution在target目录内的模块下创建档案。在撰写本文时,从分支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发行版。如果您想参与其中,请看一下“贡献给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/目录中文件和shell脚本中的执行权限bin/,以确保您可以运行已编译的脚本或程序。
对于安装二进制文件的桌面用户,OrientDB现在已安装,并且可以通过bin安装程序包目录中的外壳程序脚本运行。对于服务器,还需要执行一些其他步骤才能管理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使用Java SPI服务提供程序接口。这意味着OrientDB的jar随文件一起提供,META-INF/services其中包含组件的实现。请记住,构建单个可执行jar时,必须在不同的orientdb-*。jar中串联同名文件的内容。如果您使用的是Maven Shade插件,则可以使用Service Resource Transformer来实现。
要了解有关如何在特定环境中安装OrientDB的更多信息,请参考以下指南:
使用Docker安装
在Linux Ubuntu上安装
在JBoss AS上安装
在GlassFish上安装
在Ubuntu 12.04 VPS(DigitalOcean)上安装
在Vagrant上安装