ArangoDB Server Options
Usage: arangod [<options>]
The database directory can be specified as positional (unnamed) first parameter:
arangod /path/to/datadir
Or explicitly as named parameter:
arangod --database.directory /path/to/datadir
All other parameters need to be passed as named parameters.
That is two hyphens followed by the option name, an equals sign or a space and
finally the parameter value. The value needs to be wrapped in double quote marks
if the value contains whitespace. Extra whitespace around =
is allowed:
arangod --database.directory = "/path with spaces/to/datadir"
See Configuration if you want to translate startup parameters to configuration files.
Global Options
Name | Type | Description |
---|---|---|
configuration | string | The configuration file or 'none'.
Default: ""
|
console | boolean | Start a JavaScript emergency console.
Default: false
|
version | boolean | Reports the version and exits.
Default: false
|
Agency Options
Name | Type | Description |
---|---|---|
agency.activate | boolean | Activate agency.
Default: false
|
agency.compaction-keep-size | uint64 | Keep as many indices before compaction point.
Default: 10000
|
agency.election-timeout-max | double | Maximum timeout before an agent calls for new election [s].
Default: 5
|
agency.election-timeout-min | double | Minimum timeout before an agent calls for new election [s].
Default: 1
|
agency.endpoint | string... | Agency endpoints.
Default: []
|
agency.my-address | string | Which address to advertise to the outside.
Default: ""
|
agency.pool-size | uint64 | Number of agent pool.
Default: 1
|
agency.size | uint64 | Number of agents.
Default: 1
|
agency.supervision | boolean | Perform arangodb cluster supervision.
Default: false
|
agency.supervision-frequency | double | Arangodb cluster supervision frequency [s].
Default: 1
|
agency.supervision-grace-period | double | Supervision time, after which a server is considered to have failed [s].
Default: 10
|
Audit Options
Name | Type | Description |
---|---|---|
audit.hostname | string | Hostname to use.
Default: ""
|
audit.output | string... | Audit destination(s).
Default: []
|
Cache Options
Name | Type | Description |
---|---|---|
cache.rebalancing-interval | uint64 | Microseconds between rebalancing attempts.
Default: 2000000
|
cache.size | uint64 | Size of cache in bytes.
Default: 4364869632
|
Cluster Options
Name | Type | Description |
---|---|---|
cluster.agency-endpoint | string... | Agency endpoint to connect to.
Default: []
|
cluster.my-address | string | This server's endpoint.
Default: ""
|
cluster.my-role | string | This server's role.
Default: ""
|
cluster.require-persisted-id | boolean | If set to true, then the instance will only start if a UUID file is found in the database on startup. Setting this option will make sure the instance is started using an already existing database directory and not a new one. For the first start, the UUID file must either be created manually or the option must be set to false for the initial startup.
Default: false
|
cluster.synchronous-replication-timeout-factor | double | All synchronous replication timeouts are multiplied by this factor.
Default: 1
|
cluster.system-replication-factor | uint32 | Replication factor for system collections.
Default: 2
|
Compaction Options
Name | Type | Description |
---|---|---|
compaction.db-sleep-time | double | Sleep interval between two compaction runs (in s).
Default: 1
|
compaction.dead-documents-threshold | uint64 | Minimum unused count of documents in a datafile.
Default: 16384
|
compaction.dead-size-percent-threshold | double | How many percent of the source datafile should be unused at least.
Default: 0.1
|
compaction.dead-size-threshold | uint64 | How many bytes of the source data file are allowed to be unused at most.
Default: 131072
|
compaction.max-file-size-factor | uint64 | How large the resulting file may be in comparison to the collections '--database.maximal-journal-size' setting.
Default: 3
|
compaction.max-files | uint64 | Maximum number of files to merge to one file.
Default: 3
|
compaction.max-result-file-size | uint64 | How large may the compaction result file become (in bytes).
Default: 134217728
|
compaction.min-interval | double | Minimum sleep time between two compaction runs (in s).
Default: 10
|
compaction.min-small-data-file-size | uint64 | Minimal filesize threshhold original data files have to be below for a compaction.
Default: 131072
|
Database Options
Name | Type | Description |
---|---|---|
database.auto-upgrade | boolean | Perform a database upgrade if necessary.
Default: false
|
database.directory | string | Path to the database directory.
Default: ""
|
database.maximal-journal-size | uint64 | Default maximal journal size, can be overwritten when creating a collection.
Default: 33554432
|
database.required-directory-state | string | Required state of database directory at startup (non-existing: database directory must not exist, existing: database directory must exist, empty: database directory must exist but be empty, populated: database directory must exist and contain specific files already, any: any state allowed).
Default: "any"
Possible values:
|
Foxx Options
Name | Type | Description |
---|---|---|
foxx.queues | boolean | Enable or disable Foxx queues.
Default: true
|
foxx.queues-poll-interval | double | Poll interval (in seconds) for Foxx queue manager.
Default: 1
|
Frontend Options
Name | Type | Description |
---|---|---|
frontend.proxy-request-check | boolean | Enable or disable proxy request checking.
Default: true
|
frontend.trusted-proxy | string... | List of proxies to trust (may be IP or network). Make sure --frontend.proxy-request-check is enabled.
Default: []
|
Http Options
Name | Type | Description |
---|---|---|
http.hide-product-header | boolean | Do not expose "Server: ArangoDB" header in HTTP responses.
Default: false
|
http.keep-alive-timeout | double | Keep-alive timeout in seconds.
Default: 300
|
http.trusted-origin | string... | Trusted origin URLs for CORS requests with credentials.
Default: []
|
Javascript Options
Name | Type | Description |
---|---|---|
javascript.app-path | string | Directory for Foxx applications.
Default: "./js/apps"
|
javascript.script | string... | Run scripts and exit.
Default: []
|
javascript.script-parameter | string... | Script parameter.
Default: []
|
javascript.startup-directory | string | Path to the directory containing JavaScript startup scripts.
Default: "./js"
|
javascript.v8-contexts | uint64 | Maximum number of V8 contexts that are created for executing JavaScript actions.
Default: 0
|
javascript.v8-contexts-minimum | uint64 | Minimum number of V8 contexts that keep available for executing JavaScript actions.
Default: 0
|
javascript.v8-max-heap | uint64 | Maximal heap size (in MB).
Default: 3072
|
Ldap Options
Name | Type | Description |
---|---|---|
ldap.basedn | string | Ldap basedn, eg. dc=example,dc=com.
Default: ""
|
ldap.binddn | string | Ldap binddn, eg. cn=admin,dc=example,dc=com.
Default: ""
|
ldap.bindpasswd | string | Ldap bindpassword, eg. admin.
Default: ""
|
ldap.enabled | boolean | Enable LDAP.
Default: false
|
ldap.port | uint16 | Port to use.
Default: 389
|
ldap.prefix | string | Ldap prefix, eg. uid= xor dn= xor cn=.
Default: ""
|
ldap.refresh-rate | double | Refresh user settings after this time (in seconds).
Default: 300
|
ldap.roles-attribute-name | string | Ldap attributename where the role are located.
Default: ""
|
ldap.roles-exclude | string | Regexp to exclude groups. Leave empty to exclude none.
Default: ""
|
ldap.roles-include | string | Regexp to include groups. Leave empty to include all.
Default: ""
|
ldap.roles-search | string | Ldap search for roles; '{USER}' is replaced by the 'dn' of the user.
Default: ""
|
ldap.roles-transformation | string... | Regexp to normalizer role name, e.g. '/^ *(.*[^ ]])*/$2/'.
Default: []
|
ldap.search-attribute | string | Ldap search attribute, eg. uid.
Default: "uid"
|
ldap.search-filter | string | Ldap search filter, eg. (objectClass=simpleSecurityObject).
Default: "objectClass=*"
|
ldap.search-scope | string | Ldap search scope, one of base, one, sub.
Default: "sub"
|
ldap.server | string | Server to use.
Default: ""
|
ldap.suffix | string | Ldap suffix, eg. ,dc=example,dc=com.
Default: ""
|
ldap.superuser-role | string | Role mapping to the super-users.
Default: ""
|
ldap.tls | boolean | Enable TLS.
Default: false
|
ldap.tls-cacert-dir | string | Ldap tls cacert dir.
Default: ""
|
ldap.tls-cacert-file | string | Ldap tls cacert file.
Default: ""
|
ldap.tls-cert-check-strategy | string | Ldap tls cert check strategy, one of never, hard, demand, allow, try.
Default: "hard"
|
ldap.tls-version | string | Ldap tls version, one of 1.0, 1.1, 1.2.
Default: "1.2"
|
ldap.url | string | Ldap url, eg. ldap://example.com:389/dc=example,dc=com?uid?sub.
Default: ""
|
Log Options
Name | Type | Description |
---|---|---|
log.color | boolean | Use colors for TTY logging.
Default: true
|
log.escape | boolean | Escape characters when logging.
Default: true
|
log.level | string... | The global or topic-specific log level.
Default: ["info", "info"]
|
log.output | string... | Log destination(s).
Default: []
|
log.role | boolean | Log server role.
Default: false
|
log.use-local-time | boolean | Use local timezone instead of UTC.
Default: false
|
log.use-microtime | boolean | Use microtime instead.
Default: false
|
Nonce Options
Name | Type | Description |
---|---|---|
nonce.size | uint64 | The size of the hash array for nonces.
Default: 4194304
|
Query Options
Name | Type | Description |
---|---|---|
query.cache-entries | uint64 | Maximum number of results in query result cache per database.
Default: 128
|
query.cache-mode | string | Mode for the AQL query result cache (on, off, demand).
Default: "off"
|
query.fail-on-warning | boolean | Whether AQL queries should fail with errors even for recoverable warnings.
Default: false
|
query.memory-limit | uint64 | Memory threshold for AQL queries (in bytes).
Default: 0
|
query.slow-threshold | double | Threshold for slow AQL queries (in seconds).
Default: 10
|
query.tracking | boolean | Whether to track slow AQL queries.
Default: true
|
query.tracking-with-bindvars | boolean | Whether to track bind vars with AQL queries.
Default: true
|
Replication Options
Name | Type | Description |
---|---|---|
replication.active-failover | boolean | Enable active-failover during asynchronous replication.
Default: false
|
Rocksdb Options
Name | Type | Description |
---|---|---|
rocksdb.block-cache-shard-bits | int64 | Number of shard bits to use for block cache (use -1 for default value).
Default: -1
|
rocksdb.block-cache-size | uint64 | Size of block cache in bytes.
Default: 4364869632
|
rocksdb.compaction-read-ahead-size | uint64 | If non-zero, we perform bigger reads when doing compaction. If you're running RocksDB on spinning disks, you should set this to at least 2MB. that way RocksDB's compaction is doing sequential instead of random reads.
Default: 2097152
|
rocksdb.dynamic-level-bytes | boolean | If true, determine the number of bytes for each level dynamically to minimize space amplification.
Default: true
|
rocksdb.enable-pipelined-write | boolean | If true, use a two stage write queue for WAL writes and memtable writes.
Default: false
|
rocksdb.enable-statistics | boolean | Whether or not RocksDB statistics should be turned on.
Default: false
|
rocksdb.encryption-key-generator | string | Program providing the encryption key on stdout. If set, encryption will be enabled.
Default: ""
|
rocksdb.encryption-keyfile | string | File containing encryption key. If set, encryption will be enabled.
Default: ""
|
rocksdb.intermediate-commit-count | uint64 | An intermediate commit will be performed automatically when this number of operations is reached in a transaction.
Default: 1000000
|
rocksdb.intermediate-commit-size | uint64 | An intermediate commit will be performed automatically when a transaction has accumulated operations of this size (in bytes).
Default: 536870912
|
rocksdb.level0-compaction-trigger | int64 | Number of level-0 files that triggers a compaction.
Default: 2
|
rocksdb.level0-slowdown-trigger | int64 | Number of level-0 files that triggers a write slowdown.
Default: 20
|
rocksdb.level0-stop-trigger | int64 | Number of level-0 files that triggers a full write stall.
Default: 36
|
rocksdb.max-bytes-for-level-base | uint64 | If not using dynamic level sizes, this controls the maximum total data size for level-1.
Default: 268435456
|
rocksdb.max-bytes-for-level-multiplier | double | If not using dynamic level sizes, the maximum number of bytes for level L can be calculated as max-bytes-for-level-base * (max-bytes-for-level-multiplier ^ (L-1)).
Default: 10
|
rocksdb.max-subcompactions | uint64 | Maximum number of concurrent subjobs for a background compaction.
Default: 1
|
rocksdb.max-total-wal-size | uint64 | Maximum total size of WAL files that will force flush stale column families.
Default: 83886080
|
rocksdb.max-transaction-size | uint64 | Transaction size limit (in bytes).
Default: 18446744073709551615
|
rocksdb.max-write-buffer-number | uint64 | Maximum number of write buffers that built up in memory.
Default: 2
|
rocksdb.min-write-buffer-number-to-merge | uint64 | Minimum number of write buffers that will be merged together before writing to storage.
Default: 1
|
rocksdb.num-levels | uint64 | Number of levels for the database.
Default: 7
|
rocksdb.num-threads-priority-high | uint32 | Number of threads for high priority operations (e.g. flush).
Default: 0
|
rocksdb.num-threads-priority-low | uint32 | Number of threads for low priority operations (e.g. compaction).
Default: 0
|
rocksdb.num-uncompressed-levels | uint64 | Number of uncompressed levels for the database.
Default: 2
|
rocksdb.table-block-size | uint64 | Approximate size (in bytes) of user data packed per block.
Default: 16384
|
rocksdb.throttle | boolean | Enable write-throttling.
Default: true
|
rocksdb.transaction-lock-timeout | int64 | If positive, specifies the wait timeout in milliseconds when a transaction attempts to lock a document. A negative value is not recommended as it can lead to deadlocks (0 = no waiting, < 0 no timeout).
Default: 1000
|
rocksdb.wal-directory | string | Optional path to the RocksDB WAL directory. If not set, the WAL directory will be located inside the regular data directory.
Default: ""
|
rocksdb.wal-file-timeout | double | Timeout after which unused WAL files are deleted.
Default: 10
|
rocksdb.write-buffer-size | uint64 | Amount of data to build up in memory before converting to a sorted on-disk file (0 = disabled).
Default: 67108864
|
Server Options
Name | Type | Description |
---|---|---|
server.authentication | boolean | Enable or disable authentication for ALL client requests.
Default: true
|
server.authentication-system-only | boolean | Use HTTP authentication only for requests to /_api and /_admin.
Default: true
|
server.authentication-timeout | double | Timeout for the authentication cache in seconds (0 = indefinitely).
Default: 0
|
server.authentication-unix-sockets | boolean | Authentication for requests via UNIX domain sockets.
Default: true
|
server.descriptors-minimum | uint64 | Minimum number of file descriptors needed to start.
Default: 0
|
server.endpoint | string... | Endpoint for client requests (e.g. 'http+tcp://127.0.0.1:8529', or 'vst+ssl://192.168.1.1:8529').
Default: ["tcp://0.0.0.0:8529"]
|
server.flush-interval | uint64 | Interval (in microseconds) for flushing data.
Default: 1000000
|
server.jwt-secret | string | Secret to use when doing jwt authentication.
Default: ""
|
server.local-authentication | boolean | Enable or disable authentication using the local user database.
Default: true
|
server.maximal-queue-size | uint64 | Maximum queue length for pending operations (use 0 for unrestricted).
Default: 0
|
server.session-timeout | double | Timeout of web interface server sessions (in seconds).
Default: 5184000
|
server.storage-engine | string | Storage engine type.
Default: "auto"
Possible values:
|
server.threads | uint64 | Number of threads.
Default: 0
|
Ssl Options
Name | Type | Description |
---|---|---|
ssl.cafile | string | Ca file used for secure connections.
Default: ""
|
ssl.cipher-list | string | Ssl ciphers to use, see OpenSSL documentation.
Default: "HIGH:!EXPORT:!aNULL@STRENGTH"
|
ssl.ecdh-curve | string | SSL ECDH Curve, see the output of "openssl ecparam -list_curves".
Default: "prime256v1"
|
ssl.keyfile | string | Key-file used for secure connections.
Default: ""
|
ssl.protocol | uint64 | Ssl protocol (1 = SSLv2, 2 = SSLv2 or SSLv3 (negotiated), 3 = SSLv3, 4 = TLSv1, 5 = TLSv1.2).
Default: 5
Possible values:
|
ssl.require-peer-certificate | boolean | Require a peer certificate when connecting.
Default: false
|
ssl.session-cache | boolean | Enable the session cache for connections.
Default: false
|
Temp Options
Name | Type | Description |
---|---|---|
temp.path | string | Path for temporary files.
Default: ""
|
Vst Options
Name | Type | Description |
---|---|---|
vst.maxsize | uint32 | Maximal size (in bytes) for a VelocyPack chunk.
Default: 30720
|
Wal Options
Name | Type | Description |
---|---|---|
wal.directory | string | Logfile directory.
Default: ""
|
wal.historic-logfiles | uint32 | Maximum number of historic logfiles to keep after collection.
Default: 10
|
wal.ignore-logfile-errors | boolean | Ignore logfile errors. this will read recoverable data from corrupted logfiles but ignore any unrecoverable data.
Default: false
|
wal.ignore-recovery-errors | boolean | Continue recovery even if re-applying operations fails.
Default: false
|
wal.logfile-size | uint32 | Size of each logfile (in bytes).
Default: 33554432
|
wal.open-logfiles | uint32 | Maximum number of parallel open logfiles.
Default: 0
|
wal.reserve-logfiles | uint32 | Maximum number of reserve logfiles to maintain.
Default: 3
|
wal.sync-interval | uint64 | Interval for automatic, non-requested disk syncs (in milliseconds).
Default: 100
|