Database
 sql >> Datenbank >  >> RDS >> Database

So installieren Sie ArangoDB unter Ubuntu 20.04

Was ist ArangoDB?

ArangoDB ist eine hochverfügbare und skalierbare NoSQL-Datenbank mit mehreren Modellen, die nativ mit Grafiken und Dokumenten arbeitet und eine Volltextsuche enthält. Es ist eine kostenlose Open-Source-Software, die von der ArangoDB GmbH entwickelt und gepflegt wird. Das System unterstützt drei verschiedene Datenmodelle mit einem Datenbankkern und beinhaltet eine einheitliche Abfragesprache namens AQL (ArangoDB Query Language). Diese Abfragesprache ist deklarativ und ermöglicht die Kombination verschiedener Datenzugriffsmuster in einer einzigen Abfrage. Die Software kann auf mehreren Systemen implementiert werden, darunter Windows, macOS, Linux, Kubernetes, Docker und in unserer Managed Cloud. Es verfügt über eine starke Community-Supportbasis auf GitHub, StackOverflow, Google Groups und Slack.

Es sind zwei Versionen der ArangoDB-Software verfügbar:

  • Community-Version
  • Enterprise-Version

Optionen

Die Community Edition bietet die folgenden Funktionalitätsoptionen.

  • Mehrere Modelle :Datenmodellierung passend zu Ihrer Anwendung, einschließlich Dokumenten, Grafiken und Schlüssel-Wert-Paaren
  • Tritt bei :Verwenden Sie Joins für flexible Ad-hoc-Abfragen, was weniger Datenredundanz bedeutet.
  • Transaktionen :Die Anwendungsentwicklung mit dem Foxx-JavaScript-Framework innerhalb des Datenbankservers sorgt für die Sicherheit und Konsistenz der Daten

In der Regel verfügt die Enterprise Edition über mehr verfügbare Optionen in Bezug auf Sicherheit und Skalierbarkeit. In der folgenden Tabelle sind die Hauptunterschiede aufgeführt.

In diesem Tutorial installieren wir die Community-Version der Software.

Voraussetzungen

Nachfolgend sind die Anforderungen für diese Softwareinstallation aufgeführt:

  • Eine LW-Instanz eines Ubuntu Server 20.04 LTS.
  • Zugriff auf das Root-Benutzerkonto oder einen Benutzer mit sudo-Berechtigungen.

So installieren Sie ArangoDB

Der Installationsprozess selbst ist typisch und unkompliziert im Hinblick auf eine standardmäßige apt-basierte Softwareinstallation. Um den Prozess zu beginnen, fügen wir den Sicherheitsschlüssel des ArangoDB GPG-Repositorys hinzu. Dieser Schlüssel bestätigt, dass der Dateidownload in keiner Weise verändert oder manipuliert wurde.

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

Als Nächstes fügen wir das Repository mit diesem Befehl zu unseren Quellen hinzu.

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

Aktualisieren Sie jetzt apt, um die verfügbare Software mit diesem Befehl zu aktualisieren.

root@host:~# apt-get update

Anschließend installieren wir das apt-transport-https Softwareabhängigkeit. Die apt-transport-https Paket ermöglicht die Verwendung von https über den Paketmanager mit dem libapt-pkg Bücherei. Dadurch bleibt die Installation sicher. Verwenden Sie den folgenden Befehl.

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

Als nächstes können wir die ArangoDB-Software installieren.

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

Während des Setups werden wir gefragt, ob wir die Datenbankdateien automatisch aktualisieren möchten. Wählen Sie „Ja .“ Diese Einstellung weist darauf hin, dass alle neuen Software-Updates automatisch abgeschlossen werden und kein manuelles Eingreifen eines Benutzers erforderlich ist.

Als nächstes werden wir aufgefordert, den Typ der Datenbankspeicher-Engine auszuwählen, die wir verwenden möchten. Wählen Sie Automatisch aus hier. Die Alternativen sind rocksdb oder mmfiles .

Hinweis:Sobald wir einen Speicher-Engine-Typ ausgewählt haben, kann er nicht mehr geändert werden, es sei denn, wir sichern alle vorhandenen Datenbanken und importieren sie erneut.

Wählen Sie abschließend „Ja “, um eine vorhandene Datenbank zu sichern, bevor Upgrades an der ArangoDB-Software vorgenommen werden. Diese Sicherungen werden in /var/lib/arrangodb-$date gespeichert Ordner.

Die Installation wird nun fortgesetzt und schnell abgeschlossen. Wenn Sie zur Eingabeaufforderung zurückkehren, ist die Installation abgeschlossen.

Debug-Paket installieren

Wir haben auch die Möglichkeit, das Debug-Symbolpaket zu installieren (was standardmäßig nicht erforderlich ist). Das Debug-Symbolpaket behebt Datenbankabstürze. Es schreibt die notwendigen Absturzinformationen zusammen mit der Rückverfolgung zur Aufrufstelle in eine Protokolldatei. Diese Backtrace-Informationen können zur weiteren Untersuchung und Überprüfung an den ArangoDB-Support gesendet werden. Diese Backtraces sind nur anwendbar, wenn das Debug-Symbolpaket installiert wurde.

Führen Sie zum Bereitstellen dieser Software den folgenden Befehl aus.

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

Zugriff auf die ArangoDB-Shell

Es gibt mehrere Methoden, um die ArangoDB-Software zu starten. Der spezifische Startbefehl hängt von Ihrer Linux-Distribution und der Art der von Ihnen gewählten ArangoDB-Implementierung ab (z. B. Single Server , Master-Slave , Aktives Failover , Cluster , DC2DC ).

Führen Sie den folgenden Befehl aus, um mit der Arbeit in der ArangoDB-Shell zu beginnen.

root@host:~# arangosh

Wir werden dann aufgefordert, das während des Installationsvorgangs erstellte Admin-Passwort einzugeben. Nach der Authentifizierung erscheint die ArangoDB-Shell (ähnlich einer MySQL-Shell), in der Sie mit der Verwaltung Ihrer Datenbanken beginnen können.

Sichern Sie die Installation

In der nächsten Phase des Setups werden wir ein neues Admin-Passwort für ArangoDB einrichten. Während des Installationsvorgangs werden wir aufgefordert, ein starkes Passwort anzugeben. Geben Sie ein Passwort ein und wiederholen Sie das Passwort erneut, um fortzufahren.

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

Benutzerauthentifizierung

Die ArangoDB-Software ermöglicht es uns, den Zugriff auf unsere Datenbanken auf bestimmte Benutzer zu beschränken. Ein standardmäßiger „root“ Während des Installationsvorgangs wird ein Benutzer erstellt, der auf alle Datenbanken zugreifen kann. Als Best Practice sollten wir einen Benutzer erstellen, der Zugriffsrechte für jede Anwendungsdatenbank hat. Es ist zu beachten, dass alle Benutzer als Administratoren des Datenbanksystems gelten.

Um eine neue Datenbank und einen neuen Benutzer zu erstellen, verwenden wir den arangosh Befehl. Der Arangosh Der Befehl erstellt eine synchrone Shell, die für die Interaktion mit dem Server über die Befehlszeile verwendet wird.

 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"); 

Jetzt können wir uns mit dem Benutzer root@mydatabase mit der Datenbank verbinden .

Dienst aktivieren

Führen Sie als Nächstes die folgenden Befehle aus, um den ArangoDB-Dienst zu starten und zu aktivieren.

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

Arbeiten mit ArangoDB

Neue Datenbank erstellen

Um unsere erste Datenbank zu erstellen, führen Sie den folgenden Befehl aus.

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

Neuen Benutzer erstellen

Als nächstes erstellen wir einen neuen Benutzer, um mit den folgenden Befehlen auf die obige Datenbank zuzugreifen.

 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. 

Datenbank überprüfen

Jetzt können wir mit diesem Befehl überprüfen, ob unsere neue Datenbank erstellt wurde.

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

Sie sollten „newlwdb“ sehen ’ zurückgegeben.

Um die Shell zu verlassen, verwenden Sie die Schaltfläche „Exit“. ' Befehl. Um die Verbindung wiederherzustellen, verwenden Sie den neuen Benutzer und die neue Datenbank mit dem folgenden Befehl.

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

Webinterface

ArangoDB bietet auch eine webbasierte Schnittstelle (Codename Aardvark ) für grundlegende Datenbankinteraktionen. Es ermöglicht uns, die folgenden Aufgaben zu verwalten.

  • Datenbanken
  • Sammlungen 
  • Dokumente
  • Nutzer 
  • Grafiken 
  • Protokolle

Darüber hinaus können wir Abfragen zielführender ausführen und erläutern. Datenbankstatistiken und der Serverstatus werden ebenfalls bereitgestellt. Dieses Webinterface ist nach arangod verfügbar Prozess wird gestartet.

Auf die Datenbank zugreifen

Wir können auf diese Schnittstelle in unserem Browser über http://ip:8529 zugreifen . Der Standardbenutzer für die Schnittstelle ist root, und die Authentifizierung ist implizit aktiviert.

Datenbank auswählen

Nach der Anmeldung wird der Benutzer gefragt, welche Datenbank verwendet werden soll. Standardmäßig enthält die Installation eine _system-Datenbank. Wählen Sie diese Datenbank, um mit der Weboberfläche fortzufahren.

Das Dashboard wird mit den Serverstatistiken 

angezeigt

Dashboard-Ansichten

Die Dashboard-Oberfläche unterscheidet sich für eigenständige Instanzen von einer geclusterten Einrichtung. Die eigenständige Benutzeroberfläche wird wie folgt angezeigt.

Die Cluster-Dashboard-Ansicht sieht folgendermaßen aus.

Im ArangoDB-Dashboard sind viele weitere Funktionen verfügbar, die auf der Website der Software zu finden sind.

Grundlegende Befehle

Nachfolgend finden Sie grundlegende Befehlszeilen-Client-Tools, die in der ArangoDB:Befehlszeilenumgebung verwendet werden.

  • Arangodump : Dieser Befehl erstellt Backups der in einer ArangoDB gespeicherten Daten und Strukturen.
  • Arangorestore :Dies ist der Befehl zum Wiederherstellen von Sicherungen, die mit Arangodump erstellt wurden Befehl.
  • Arangoimport: Dieser Befehl wird verwendet, um Daten in den Formaten JSON, CSV und TSV in den ArangoDB-Server zu importieren.
  • Arangoexport: Dieser Befehl wird verwendet, um Daten von einem ArangoDB-Server in JSON-, CSV- oder XML-Formate zu exportieren.
  • Arangobench: Dies ist ein Test- und Benchmarking-Tool, das mit der ArangoDB-Software verwendet wird. Es wird verwendet, um Testanfragen an eine Datenbank zu senden, um Leistung und Serverfunktionen zu messen.
  • Arangoinspect :Dieser Befehl sammelt Informationen über die Einrichtung des ArangoDB-Servers, um die Fehlerbehebung für den ArangoDB-Support zu erleichtern.

Notfallkonsole

Die ArangoDB-Datenbank hat zwei Hauptbetriebsmodi: 

  • Servermodus — Dieser Modus beantwortet Clientanfragen.
  • Notfallmodus — In diesem Modus verwendet ArangoDB eine Konsole, um im Notfall (z. B. bei einer beschädigten Datenbank) sofort auf die Datenbank zuzugreifen. Die Notfallkonsole lässt uns alle Standardbefehle erteilen. In diesem Modus kann der Server jedoch keine Client-Anfragen verarbeiten.

In der Regel besteht keine Notwendigkeit, auf die Notfallkonsole zuzugreifen, es sei denn, Sie sind Entwickler.

Schlussfolgerung

ArangoDB ist eine kostenlose Software, die ein Open-Source-Datenbanksystem mit mehreren Modellen ist, das von vielen als optimales Framework für die flexible Datenmodellierung angesehen wird, einschließlich Dokumenten, Diagrammen und anderen Schlüsselwerten.

Wir sind stolz darauf, The Most Helpful Humans In Hosting™ zu sein!


Liquid Web Support kann viele Fragen zur Datenbankerstellung und -nutzung beantworten. Wir verfügen über fundierte Kenntnisse mehrerer Webhosting-Technologien, insbesondere der in diesem Artikel besprochenen. Wenn Sie Fragen zu diesem Tutorial haben, stehen wir Ihnen 24 Stunden am Tag, 7 Tage die Woche und 365 Tage im Jahr zur Verfügung.

Wenn Sie ein vollständig verwalteter VPS-Server, dedizierter Cloud-Server, eine private VMWare-Cloud, ein privater übergeordneter Server, verwaltete Cloud-Server oder ein Eigentümer eines dedizierten Servers sind und Sie sich unwohl fühlen, einen der beschriebenen Schritte auszuführen, werden wir ist telefonisch erreichbar unter @800.580.4985, per Chat oder Support-Ticket, um Sie bei diesem Vorgang zu unterstützen.