如何在 Ubuntu 20.04 上安装 ArangoDB

什么是 ArangoDB?

ArangoDB 是一个高可用性和可扩展的多模型 NoSQL 数据库,本机处理图形和文档,并包括全文搜索。 它是由 ArangoDB GmbH 开发和维护的免费开源软件。 该系统通过一个数据库核心支持三种不同的数据模型,并包括一种称为 AQL(ArangoDB 查询语言)的统一查询语言。 这种查询语言是声明性的,允许在单个查询中组合不同的数据访问模式。 该软件可以在多个系统上实施,包括 Windows、macOS、Linux、Kubernetes、Docker 以及我们的托管 Cloud. 它在 GitHub、StackOverflow、Google Groups 和 Slack 上拥有强大的社区支持基础。

有两个版本的 ArangoDB 软件可用:

  • 社区版
  • 企业版

选项

社区版提供以下功能选项。

  • 多模型:适合您的应用程序的数据建模,包括文档、图表和键值对
  • 加入:使用连接进行灵活的即席查询,这意味着更少的数据冗余。
  • 交易:在数据库服务器中使用 Foxx Javascript 框架进行应用程序开发,确保数据安全和一致

通常,企业版在安全性和可扩展性方面有更多可用选项。 下图说明了主要区别。

在本教程中,我们将安装该软件的社区版本。

先决条件

以下是此软件安装的要求:

  • Ubuntu Server 20.04 LTS 的 LW 实例。
  • 访问 root 用户帐户或具有以下权限的用户 sudo 特权。

如何安装 ArangoDB

就基于 apt 的标准软件安装而言,安装过程本身是典型且直接的。 要开始该过程,我们将添加 ArangoDB GPG 存储库安全密钥。 此密钥验证文件下载未被以任何方式更改或篡改。

root@host:~# wget -q https://download.arangodb.com/arangodb34/DEBIAN/Release.key -O- | apt-key add -

接下来,我们将使用此命令将存储库添加到我们的源中。

root@host:~# echo 'deb https://download.arangodb.com/arangodb34/DEBIAN/ /' | tee /etc/apt/sources.list.d/arangodb.list

现在,使用此命令更新 apt 以刷新可用软件。

root@host:~# apt-get update

然后我们安装 apt-transport-https 软件依赖项。 apt-transport-https 包通过使用 libapt-pkg 库的包管理器启用 https 的使用。 这样可以确保安装安全。 使用以下命令。

root@host:~# apt-get -y install apt-transport-https

接下来,我们可以安装 ArangoDB 软件。

root@host:~# apt-get -y install arangodb3=3.7.6-1

在设置过程中,系统会询问我们是否要自动升级数据库文件。 选择 ”是的。” 此设置暗示任何新软件更新都会自动完成,而不需要用户手动干预。

接下来,系统会提示我们选择我们想要使用的数据库存储引擎的类型。 选择 汽车 这里。 替代方案是rocksdb 或mmfiles。

注意:一旦我们选择了存储引擎类型,除非我们转储并重新导入所有现有数据库,否则无法更改它。

最后选择“是的” 在对 ArangoDB 软件进行任何升级之前备份任何现有数据库。 这些备份存储在 /var/lib/arrangodb-$date 文件夹中。

安装现在将继续并快速完成。 当您返回命令提示符时,安装完成。

安装调试包

我们还可以选择安装调试符号包(默认情况下不需要)。 调试符号包可解决数据库崩溃问题。 它将必要的崩溃信息与调用站点的回溯一起写入日志文件。 可以将此回溯信息发送给 ArangoDB 支持以进行进一步检查和审查。 这些回溯仅适用于已安装调试符号包的情况。

要部署此软件,请运行以下命令。

root@host:~# apt-get install arangodb3-dbg=3.7.6-1

访问 ArangoDB Shell

有几种方法可以启动 ArangoDB 软件。 具体的启动命令将取决于您的 Linux 发行版和您选择的 ArangoDB 实现类型(例如,单服务器、主从、主动故障转移、集群、DC2DC)。

要开始在 ArangoDB shell 中工作,请运行以下命令。

root@host:~# arangosh

然后提示我们输入 admin 安装过程中创建的密码。 一旦通过身份验证,将出现 ArangoDB shell(类似于 MySQL shell),您可以在其中开始管理数据库。

确保安装

在设置的下一阶段,我们将建立一个新的 admin ArangoDB 的密码。 在安装过程中,我们被要求提供一个强密码。 输入密码,然后再次重新输入密码以继续。

root@host:~# shell> arangosh --server.username "root@mydatabase" --server.database mydatabase

用户认证

ArangoDB 软件允许我们限制特定用户访问我们的数据库。 在安装过程中会创建一个默认的“root”用户,该用户可以访问所有数据库。 作为最佳实践,我们应该创建一个对每个应用程序数据库都具有访问权限的用户。 应该注意的是,所有用户都被视为数据库系统的管理员。

要创建新的数据库和用户,我们使用 arangosh 命令。 arangosh 命令创建一个同步 shell,用于在命令行上与服务器交互。

 root@host:~# arangosh> db._createDatabase("mydatabase");
 root@host:~# arangosh> var users = require("@arangodb/users");
 root@host:~# arangosh> users.save("root@mydatabase", "password");
 root@host:~# arangosh> users.grantDatabase("root@mydatabase", "mydatabase"); 

现在我们可以使用用户 root@mydatabase 连接到数据库。

启用服务

接下来,要启动并启用 ArangoDB 服务,请运行以下命令。

 root@host:~# systemctl start arangodb3
 root@host:~# systemctl enable arangodb3 

使用 ArangoDB

创建新数据库

要创建我们的第一个数据库,请运行以下命令。

root@host:~# >shell db._createDatabase("newlwdb");

创建新用户

接下来,我们将使用以下命令创建一个新用户来访问上述数据库。

 root@host:~# >shell var users = require("@arangodb/users");
 root@host:~# >shell users.save("lwuser@localhost", "PASSWORD");
 root@host:~# >shell users.grantDatabase("lwuser@example", "newlwdb");
 root@host:~# >shell where PASSWORD is a strong/unique password. 

验证数据库

现在,我们可以使用此命令验证我们的新数据库是否已创建。

root@host:~# >shell db._databases()

您应该会看到返回的“newlwdb”。

要离开外壳,请使用 ‘Exit’ 命令。 要重新连接,请使用以下命令使用新用户和数据库。

root@host:~# >shell arangosh --server.username “lwuser@localhost" --server.database newlwdb

网页界面

ArangoDB 还为基本的数据库交互提供了一个基于 Web 的界面(代号 Aardvark)。 它允许我们管理以下任务。

  • 数据库
  • 收藏品
  • 文件
  • 用户
  • 图表
  • 日志

此外,我们可以更方便地运行和解释查询。 还提供数据库统计信息和服务器状态。 此 Web 界面在 arangod 进程启动后可用。

访问数据库

我们可以在浏览器中通过 https://ip:8529 访问这个界面。 该接口的默认用户是 root,并且隐式启用了身份验证。

loginView_result

选择数据库

登录后,用户将询问使用哪个数据库。 默认情况下,安装包含一个 _system 数据库。 选择此数据库以继续进入 Web 界面。

选择数据库

仪表板显示服务器统计信息

仪表板视图

独立实例与集群设置的仪表板界面将有所不同。 Standalone 界面将如下所示。

独立界面

集群仪表板视图将如下所示。

集群仪表板视图

中还有更多可用的功能 ArangoDB 仪表板 可以在软件的网站上找到。

基本命令

以下是 ArangoDB: 命令行环境中使用的基本命令行客户端工具。

  • 阿兰戈杜普:此命令创建存储在 ArangoDB 中的数据和结构的备份。
  • 阿兰戈尔商店:这是用于恢复使用 Arangodump 命令创建的备份的命令。
  • 阿朗戈进口: 该命令用于将 JSON、CSV 和 TSV 格式的数据导入 ArangoDB 服务器。
  • 阿兰戈出口: 此命令用于将数据从 ArangoDB 服务器导出为 JSON、CSV 或 XML 格式。
  • Arangobench: 这是与 ArangoDB 软件一起使用的测试和基准测试工具。 它用于向数据库发送测试请求以测量性能和服务器功能。
  • Arangoinspect:此命令收集有关 ArangoDB 服务器设置的信息,以方便 ArangoDB 支持的故障排除。

应急控制台

ArangoDB 数据库有两种主要的操作模式:

  • 服务器模式 — 此模式将响应客户端请求。
  • 应急模式 — 在这种模式下,ArangoDB 使用控制台在紧急情况下立即进入数据库(例如,对于损坏的数据库)。 紧急控制台让我们可以发出所有标准命令。 但是,在这种模式下,服务器无法处理任何客户端请求。

通常,除非您是开发人员,否则无需访问紧急控制台。

结论

ArangoDB 是一个免费软件,它是一个开源的多模型数据库系统,被许多人认为是灵活数据建模的最佳框架,包括文档、图形和其他键值。

我们以成为 Hosting™ 中最乐于助人的人而自豪!

Liquid Web Support 可以回答许多与数据库创建和使用相关的问题。 我们对多种网络托管技术有深入的了解,尤其是本文中讨论的那些。 如果您对本教程有任何疑问,我们一年 365 天、每周 7 天、每天 24 小时都为您服务。

如果您是完全托管的 VPS 服务器, Cloud 专用,VMWare 私有 Cloud私有父服务器, 托管 Cloud 服务器或专用服务器所有者,并且您对执行概述的任何步骤感到不舒服,可以通过电话@800.580.4985 联系我们, 聊天 或支持票以帮助您完成此过程。