ArangoDB is a free, open-source, and native graph database system developed by ArangoDB Inc. It is a multi-model database system that natively supports graphs, documents, and searches. Compared to other NoSQL databases, ArangoDB stores data as documents, key/value pairs, or graphs. It uses a declarative query language called AQL (ArangoDB Query Language). ArangoDB provides both a command line interface and a web-based interface.

In this post, we will show you how to install and use ArangoDB on Oracle Linux 10.

Step 1 – Install ArangoDB

By default, the ArangoDB package is not included in the Oracle Linux default repo, so you will need to create a repo for it.

nano /etc/yum.repos.d/arangodb.repo

Add the following lines:

[arangodb]
name=ArangoDB Project
type=rpm-md
baseurl=https://download.arangodb.com/arangodb35/RPM
gpgcheck=0
gpgkey=https://download.arangodb.com/arangodb35/RPM/repodata/repomd.xml.key
enabled=1

Next, install the ArangoDB with the following commands:

dnf install arangodb3 -y

After the successful installation, you can verify the ArangoDB version using the following command:

arangodb --version

You should see the following output:

Version 0.14.15-1, build fe064e0, Go go1.13.6

Step 2 – Secure ArangoDB Installation

Next, you will need to run the arango-secure-installation script to set the root password for ArangoDB. You can run it with the following command:

arango-secure-installation

You should see the following output:

Please enter password for root user: 
Repeat password: 
2022-08-23T07:25:09Z [10283] INFO [a1c60] {syscall} file-descriptors (nofiles) hard limit is 262144, soft limit is 262144
2022-08-23T07:25:10Z [10283] INFO [95cab] Password changed.
2022-08-23T07:25:10Z [10283] INFO [7da27] {startup} server will now shut down due to upgrade, database initialization or admin restoration.

Step 3 – Manage ArangoDB Service

By default, the ArangoDB service is managed by systemd. You can manage it easily using the systemctl command.

To start the ArangoDB service, run the following command:

systemctl start arangodb3

To enable the ArangoDB service to start at system reboot, run the following command:

systemctl enable arangodb3

You can verify the status of the ArangoDB using the following command:

systemctl status arangodb3

You should get the following output:

● arangodb3.service - ArangoDB database server
     Loaded: loaded (/etc/systemd/system/arangodb3.service; disabled; preset: disabled)
     Active: active (running) since Wed 2025-12-10 02:44:41 EST; 4s ago
 Invocation: 74bf635c65d14256b2c4d1f14ee0b84f
    Process: 43418 ExecStartPre=/usr/bin/install -g arangodb -o arangodb -d /var/tmp/arangodb3 (code=exited, status=0/SUCCESS)
    Process: 43420 ExecStartPre=/usr/bin/install -g arangodb -o arangodb -d /var/run/arangodb3 (code=exited, status=0/SUCCESS)
    Process: 43422 ExecStartPre=/bin/chown -R arangodb:arangodb /var/log/arangodb3 (code=exited, status=0/SUCCESS)
    Process: 43424 ExecStartPre=/bin/chmod 700 /var/log/arangodb3 (code=exited, status=0/SUCCESS)
    Process: 43426 ExecStartPre=/bin/chown -R arangodb:arangodb /var/lib/arangodb3 (code=exited, status=0/SUCCESS)
    Process: 43428 ExecStartPre=/bin/chmod 700 /var/lib/arangodb3 (code=exited, status=0/SUCCESS)
    Process: 43430 ExecStartPre=/bin/chown -R arangodb:arangodb /var/lib/arangodb3-apps (code=exited, status=0/SUCCESS)
    Process: 43432 ExecStartPre=/bin/chmod 700 /var/lib/arangodb3-apps (code=exited, status=0/SUCCESS)
   Main PID: 43434 (arangod)
      Tasks: 27 (limit: 131072)
     Memory: 226M (peak: 226.4M)
        CPU: 640ms
     CGroup: /system.slice/arangodb3.service
             └─43434 /usr/sbin/arangod --pid-file /var/run/arangodb3/arangod.pid --temp.path /var/tmp/arangodb3 --log.foreground-tty true

Step 4 – How to Use ArangoDB

ArangoDB provides a command line utility called arangosh to manage the ArangoDB via the command line.

To connect to the ArangoDB shell, run the following command:

arangosh

You will be asked to provide your root password to connect to the ArangoDB shell as shown below:

Please specify a password: 


                                       _     
  __ _ _ __ __ _ _ __   __ _  ___  ___| |__  
 / _` | '__/ _` | '_ \ / _` |/ _ \/ __| '_ \ 
| (_| | | | (_| | | | | (_| | (_) \__ \ | | |
 \__,_|_|  \__,_|_| |_|\__, |\___/|___/_| |_|
                       |___/                 

arangosh (ArangoDB 3.5.7 [linux] 64bit, using jemalloc, build tags/v3.5.7-0-ga94761e8c6, VPack 0.1.33, RocksDB 6.2.0, ICU 58.1, V8 7.1.302.28, OpenSSL 1.1.1h  22 Sep 2020)
Copyright (c) ArangoDB GmbH

Command-line history will be persisted when the shell is exited. You can use `--console.history false` to turn this off
Connected to ArangoDB 'http+tcp://127.0.0.1:8529, version: 3.5.7 [SINGLE, server], database: '_system', username: 'root'

Type 'tutorial' for a tutorial or 'help' to see common examples
127.0.0.1:8529@_system> 

Next, create a database named testdb using the following command:

db._createDatabase("testdb");

To create a user called testuser and set a password, run the following command:

var users = require("@arangodb/users");
users.save("testuser@localhost", "password");

You should see the following output:

{ 
  "user" : "testuser@localhost", 
  "active" : true, 
  "extra" : { 
  }, 
  "code" : 201 
}

To grant privileges to the database and user, run the following command:

users.grantDatabase("testuser@localhost", "testdb");

To verify all databases, run the following command:

db._databases();

You should see the following output:

[ 
  "_system", 
  "testdb" 
]

To exit from the ArangoDB shell, run the following command:

exit

Run the following command to connect to the ArangoDB using the user and database which we have created above:

arangosh --server.username "testuser@localhost" --server.database testdb

You should get the ArangoDB shell in the following output:

Please specify a password: 

                                       _     
  __ _ _ __ __ _ _ __   __ _  ___  ___| |__  
 / _` | '__/ _` | '_ \ / _` |/ _ \/ __| '_ \ 
| (_| | | | (_| | | | | (_| | (_) \__ \ | | |
 \__,_|_|  \__,_|_| |_|\__, |\___/|___/_| |_|
                       |___/                 

arangosh (ArangoDB 3.5.7 [linux] 64bit, using jemalloc, build tags/v3.5.7-0-ga94761e8c6, VPack 0.1.33, RocksDB 6.2.0, ICU 58.1, V8 7.1.302.28, OpenSSL 1.1.1h  22 Sep 2020)
Copyright (c) ArangoDB GmbH

Command-line history will be persisted when the shell is exited. You can use `--console.history false` to turn this off
Connected to ArangoDB 'http+tcp://127.0.0.1:8529, version: 3.5.7 [SINGLE, server], database: 'testdb', username: 'testuser@localhost'

Type 'tutorial' for a tutorial or 'help' to see common examples
127.0.0.1:8529@testdb>  

Step 5 – Access ArangoDB Web Interface

By default, the ArangoDB web interface is accessible only from the localhost. You will need to edit the ArangoDB configuration file for remote access.

nano /etc/arangodb3/arangod.conf

Find the following line:

endpoint = tcp://127.0.0.1:8529

And replace it with the following line:

endpoint = tcp://your-server-ip:8529

Save and close the file, then restart the ArangoDB service to apply the changes:

systemctl restart arangodb3

Now, open your web browser and type the URL http://your-server-ip:8529. You should see the ArangoDB login page:
ArangoDB login page
Provide your ArangoDB root username and password and click on the Login button. You should see the ArangoDB dashboard on the following page:
ArangoDB select database page
ArangoDB dashboard page

Conclusion

In this guide, we explained how to install ArangoDB on Oracle Linux 10. We also explained how to use the ArangoDB shell to create a database and user. ArangoDB is a very good alternative to MongoDB and can be used in a mission-critical environment. Get started with ArangoDB on VPS Hosting from Atlantic.Net!