---
title: influx restore
description: The influx restore command restores backup data and metadata from an InfluxDB backup directory.
url: https://docs.influxdata.com/influxdb/v2/reference/cli/influx/restore/
estimated_tokens: 2855
product: InfluxDB OSS v2
version: v2
---

# influx restore

-   influx CLI 2.0.0+
-   InfluxDB 2.0.0+
-   Updated in CLI v2.0.7

This page documents an earlier version of InfluxDB OSS. [InfluxDB 3 Core](/influxdb3/core/) is the latest stable version.

#### 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](/influxdb/v2/admin/tokens/#token-hashing).

The `influx restore` command restores backup data and metadata from an InfluxDB OSS backup directory.

### The restore process

When restoring data from a backup file set, InfluxDB temporarily moves existing data and metadata while `restore` runs. After `restore` completes, the temporary data is deleted. If the restore process fails, InfluxDB preserves the data in the temporary location.

*For information about recovering from a failed restore process, see [Restore data](/influxdb/v2/admin/backup-restore/restore/#recover-from-a-failed-restore).*

#### Cannot restore to existing buckets

The `influx restore` command cannot restore data to existing buckets. Use the `--new-bucket` flag to create a bucket with a new name and restore data into it. To restore data and retain bucket names, [delete existing buckets](/influxdb/v2/admin/buckets/delete-bucket/) and then begin the restore process.

## Usage

```
influx restore [flags]
```

## Flags

| Flag |  | Description | Input type | Maps to ? |
| --- | --- | --- | --- | --- |
| -c | --active-config | CLI configuration to use for command | string |  |
| -b | --bucket | Name of the bucket to restore (mutually exclusive with --bucket-id) | string |  |
|  | --bucket-id | ID of the bucket to restore (mutually exclusive with --bucket) | string |  |
|  | --configs-path | Path to influx CLI configurations (default ~/.influxdbv2/configs) | string | INFLUX_CONFIGS_PATH |
|  | --full | Fully restore and replace all data on server |  |  |
| -h | --help | Help for the restore command |  |  |
|  | --hide-headers | Hide table headers (default false) |  | INFLUX_HIDE_HEADERS |
|  | --host | HTTP address of InfluxDB (default http://localhost:8086) | string | INFLUX_HOST |
|  | --http-debug | Inspect communication with InfluxDB servers. | string |  |
|  | --json | Output data as JSON (default false) |  | INFLUX_OUTPUT_JSON |
|  | --new-bucket | Name of the bucket to restore to | string |  |
|  | --new-org | Name of the organization to restore to | string |  |
|  | --operator-token | Operator token to use when restoring a backup that contains only hashed tokens. Used by --full only. (2.8.0+) | string |  |
| -o | --org | Organization name (mutually exclusive with --org-id) | string |  |
|  | --org-id | Organization ID (mutually exclusive with --org) | string |  |
|  | --skip-verify | Skip TLS certificate verification |  | INFLUX_SKIP_VERIFY |
| -t | --token | API token | string | INFLUX_TOKEN |

## Examples

#### Authentication credentials

The examples below assume your InfluxDB **host**, **organization**, and **token** are provided by either the [active `influx` CLI configuration](/influxdb/v2/reference/cli/influx/#provide-required-authentication-credentials) or by environment variables (`INFLUX_HOST`, `INFLUX_ORG`, and `INFLUX_TOKEN`). If you do not have a CLI configuration set up or the environment variables set, include these required credentials for each command with the following flags:

-   `--host`: [InfluxDB host](/influxdb/v2/reference/urls/)
-   `-o, --org` or `--org-id`: InfluxDB organization name or ID
-   `-t, --token`: InfluxDB API token

-   [Restore backup data](#restore-backup-data)
-   [Restore backup data for a specific bucket into a new bucket](#restore-backup-data-for-a-specific-bucket-into-a-new-bucket)
-   [Restore and replace all data](#restore-and-replace-all-data)
-   [Restore a backup that contains hashed tokens](#restore-a-backup-that-contains-hashed-tokens)

##### Restore backup data

```sh
influx restore /path/to/backup/dir/
```

##### Restore backup data for a specific bucket into a new bucket

```sh
influx restore \
  --bucket example-bucket \
  --new-bucket new-example-bucket \
  /path/to/backup/dir/
```

##### Restore and replace all data

`influx restore --full` restores all time series data *and* InfluxDB key-value data such as tokens, dashboards, users, etc.

```sh
influx restore --full /path/to/backup/dir/
```

##### Restore a backup that contains hashed tokens

If the backup was taken from an instance with [token hashing](/influxdb/v2/admin/tokens/#token-hashing) enabled (the default in **InfluxDB OSS 2.9.0+**), the backup does not contain a plaintext operator token. Supply the operator token with `--operator-token` so the CLI can authenticate post-restore requests.

*Requires `influx` CLI 2.8.0+.*

```sh
influx restore \
  --full \
  --operator-token OPERATOR_TOKEN \
  /path/to/backup/dir/
```

#### Related

-   [Restore data](/influxdb/v2/admin/backup-restore/restore/)
-   [influx backup](/influxdb/v2/reference/cli/influx/backup/)
-   [influx CLI—Provide required authentication credentials](/influxdb/v2/reference/cli/influx/#provide-required-authentication-credentials)
-   [influx CLI—Flag patterns and conventions](/influxdb/v2/reference/cli/influx/#flag-patterns-and-conventions)

[restore](/influxdb/v2/tags/restore/)
