influxd - InfluxDB service
API token hashing is enabled by default in InfluxDB OSS 2.9.0
Stronger token security: tokens are stored as hashes on disk, so a copy of the database file doesn’t expose usable tokens. Existing tokens are hashed on first startup and the original strings can’t be recovered afterward — capture any plaintext tokens you still need before you upgrade.
For more information, see Token hashing.
The influxd daemon starts and runs all the processes necessary for InfluxDB to function.
Usage
influxd [flags]
influxd [command]For information about other available InfluxDB configuration methods, see InfluxDB configuration options.
Commands
| Command | Description |
|---|---|
| downgrade | Downgrade metadata schema to match an older release |
| help | Output help information for influxd |
| inspect | Inspect on-disk database data |
| print-config | (Deprecated) Print full influxd configuration for the current environment |
| recovery | Recover operator access to InfluxDB |
| run | Start the influxd server (default) |
| upgrade | Upgrade a 1.x version of InfluxDB to 2.10 |
| version | Output the current version of InfluxDB |
Flags
- --assets-path
- --bolt-path
- --e2e-testing
- --engine-path
- --feature-flags
- --flux-log-enabled
- --hardening-enabled
- --health-auth-mode
- -h, --help
- --http-bind-address
- --http-idle-timeout
- --http-read-header-timeout
- --http-read-timeout
- --http-user-query-bytes-enabled
- --http-user-write-bytes-enabled
- --http-write-timeout
- --influxql-max-select-buckets
- --influxql-max-select-point
- --influxql-max-select-series
- --influxql-max-time-range
- --instance-id
- --log-level
- --metrics-disabled
- --nats-max-payload-bytes - (deprecated in InfluxDB 2.2)
- --nats-port - (deprecated in InfluxDB 2.2)
- --no-tasks
- --overwrite-pid-file
- --pid-file
- --pprof-disabled
- --query-concurrency
- --query-initial-memory-bytes
- --query-max-memory-bytes
- --query-memory-bytes
- --query-queue-size
- --reporting-disabled
- --secret-store
- --session-length
- --session-renew-disabled
- --sqlite-path
- --startup-error-linger
- --storage-cache-max-memory-size
- --storage-cache-snapshot-memory-size
- --storage-cache-snapshot-write-cold-duration
- --storage-compact-full-write-cold-duration
- --storage-compact-throughput
- --storage-compact-throughput-burst
- --storage-max-concurrent-compactions
- --storage-max-index-log-file-size
- --storage-no-validate-field-size
- --storage-retention-check-interval
- --storage-series-file-max-concurrent-snapshot-compactions
- --storage-series-id-set-cache-size
- --storage-shard-precreator-advance-period
- --storage-shard-precreator-check-interval
- --storage-tsm-use-madv-willneed
- --storage-validate-keys
- --storage-wal-flush-on-shutdown
- --storage-wal-fsync-delay
- --storage-wal-max-concurrent-writes
- --storage-wal-max-write-delay
- --storage-write-timeout
- --store
- --strong-passwords
- --testing-always-allow-setup
- --tls-cert
- --tls-key
- --tls-min-version
- --tls-strict-ciphers
- --tracing-type
- --ui-disabled
- --use-hashed-tokens
- --vault-addr
- --vault-cacert
- --vault-capath
- --vault-client-cert
- --vault-client-key
- --vault-client-timeout
- --vault-max-retries
- --vault-skip-verify
- --vault-tls-server-name
- --vault-token
Exit codes
Available in InfluxDB OSS v2.10 and later.
When the influxd server fails to start, its exit code tells you whether restarting can help.
The codes follow the BSD sysexits.h convention.
| Code | Name | Meaning | Restart helps? |
|---|---|---|---|
| 0 | EX_OK | Startup and shutdown succeeded, including a shutdown requested by a signal. | — |
| 1 | — | An error with no category. Subcommands such as inspect, upgrade, and recovery report all failures with this code. | Unknown |
| 64 | EX_USAGE | The command line is wrong: an unknown flag, a flag value that can’t be parsed, or an unexpected argument. | No |
| 65 | EX_DATAERR | The data on disk isn’t readable by this version–for example, InfluxDB 1.x _series or index directories under --engine-path. | No |
| 66 | EX_NOINPUT | A path doesn’t exist or is the wrong type–for example, --engine-path points to a file, or a parent directory is missing. | No |
| 69 | EX_UNAVAILABLE | A required resource is in use: the --http-bind-address port, an existing --pid-file, or a dependency that refused the connection. | Only after the conflict clears |
| 70 | EX_SOFTWARE | Startup failed without an operating system cause. Read the error and the log. | No |
| 71 | EX_OSERR | The operating system ran out of file descriptors or memory. | After you raise the limits |
| 73 | EX_CANTCREAT | A file can’t be created or extended: the disk is full, a quota is exhausted, or the file system is read-only. | After you free space or make the file system writable |
| 74 | EX_IOERR | An I/O error occurred while reading or writing, usually from hardware or a failing file system. | No |
| 75 | EX_TEMPFAIL | An operation didn’t finish: a dependency timed out, SIGINT interrupted startup, or shutdown exceeded its time limit. | Yes |
| 77 | EX_NOPERM | Permission was denied on a data directory, PID file, TLS certificate, or privileged port. | No |
| 78 | EX_CONFIG | A configuration value is wrong–for example, 1.x keys in a 2.x configuration file, a configuration file that can’t be parsed, or an invalid option value. | No |
To retrieve the startup error from the /health and /ready endpoints before influxd exits,
set startup-error-linger.
Prevent restart loops with systemd
If influxd exits with a code that a restart can’t fix, systemd restarts it into the same failure.
To stop restarting on those codes, add RestartPreventExitStatus to the influxd service unit:
[Service]
Restart=on-failure
RestartPreventExitStatus=64 65 66 70 74 77 78Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB OSS v2 and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.