Documentation

Upgrading from previous versions

This page documents an earlier version of InfluxDB. InfluxDB v2.6 is the latest stable version.

This page outlines process for upgrading from:

Version 0.12-1.2 to 1.3Version 0.10 or 0.11 to 1.3

Upgrade from 0.12-1.2 to 1.3

  1. Download InfluxDB version 1.3

  2. Update the configuration file

    Migrate any customizations in the 1.2 configuration file to the 1.3 configuration file.

  3. Restart the process

  4. Check out the new features outlined in Differences between InfluxDB 1.3 and 1.2

Upgrade from 0.10 or 0.11 to 1.3

Note: 0.10 users will need to convert any remaining b1 and bz1 shards to TSM format before following the instructions below. InfluxDB 1.3 cannot read non-TSM shards. Check for non-TSM shards in your data directory:

  • Non-TSM shards are files of the form: `data//<retention_policy>/<shard_id>``
  • TSM shards are files of the form: data/<database>/<retention_policy>/<shard_id>/<file>.tsm

In versions prior to 0.12, InfluxDB stores metastore information in raft.db via the raft services. In versions 0.12+, InfluxDB stores metastore information in meta.db, a binary protobuf file.

The following steps outline how to transfer metastore information to the new format. They also outline when to upgrade the binary to 1.3 and when to generate a new configuration file.

To start out, you must be working with version 0.10 or 0.11 (don’t upgrade the influxd binary yet!). If you’ve already upgraded the binary to 1.3, reinstall 0.11.1; InfluxDB 1.3 will yield an error (run: create server: detected /var/lib/influxdb/meta/raft.db. [...]) if you attempt to start the process without completing the steps below. The examples below assume you are working with a version of linux.

Before you start, we recommend making a copy of the entire 0.10 or 0.11 meta directory in case you experience problems with the upgrade. The upgrade process removes the raft.db and node.json files from the meta directory:

cp -r <path_to_meta_directory> <path_to_011_meta_directory_backup>

Example:

Create a copy of the 0.10 or 0.11 meta directory in backups/:

~# cp -r /var/lib/influxdb/meta backups/

1. While still running 0.10 or 0.11, export the metastore data to a different directory:

influxd backup <path_to_metastore_backup>

The directory will be created if it doesn’t already exist.

Example:

Export the 0.10 or 0.11 metastore to /tmp/backup:

~# influxd backup /tmp/backup/
2016/04/01 15:33:35 backing up metastore to /tmp/backup/meta.00
2016/04/01 15:33:35 backup complete

2. Stop the influxdb service:

sudo service influxdb stop

3. Upgrade the influxd binary to 1.3. but do not start the service.

4. Upgrade your metastore to the 1.3 store by performing a restore with the backup you created in step 1:

influxd restore -metadir=<path_to_1.3_meta_directory> <path_to_metastore_backup>

Example:

Restore /tmp/backup to the meta directory in /var/lib/influxdb/meta:

~# influxd restore -metadir=/var/lib/influxdb/meta /tmp/backup
Using metastore snapshot: /tmp/backup/meta.00

5. Update the permissions on the meta database:

chown influxdb:influxdb <path_to_1.3_meta_directory>/meta.db

Example:

~# chown influxdb:influxdb /var/lib/influxdb/meta/meta.db

6. Update the configuration file:

Compare your old configuration file against the 1.3 configuration file and manually update any defaults with your localized settings.

7. Start the 1.3 service:

sudo service influxdb start

8. Confirm that your metastore data is present:

The 1.3 output from the queries SHOW DATABASES,SHOW USERS and SHOW RETENTION POLICIES ON <database_name> should match the 0.10 or 0.11 output.

If your metastore data do not appear to be present, stop the service, reinstall InfluxDB 0.10 or 0.11, restore the copy you made of the entire 0.10 or 0.11 meta directory to the meta directory, and try working through these steps again.

9. Check out the new features outlined in Differences between InfluxDB 1.3 and 1.2.


Was this page helpful?

Thank you for your feedback!


Set your InfluxDB URL

Linux Package Signing Key Rotation

All signed InfluxData Linux packages have been resigned with an updated key. If using Linux, you may need to update your package configuration to continue to download and verify InfluxData software packages.

For more information, see the Linux Package Signing Key Rotation blog post.

InfluxDB Cloud backed by InfluxDB IOx

All InfluxDB Cloud organizations created on or after January 31, 2023 are backed by the new InfluxDB IOx storage engine. Check the right column of your InfluxDB Cloud organization homepage to see which InfluxDB storage engine you’re using.

If powered by IOx, this is the correct documentation.

If powered by TSM, see the TSM-based InfluxDB Cloud documentation.

InfluxDB Cloud backed by InfluxDB TSM

All InfluxDB Cloud organizations created on or after January 31, 2023 are backed by the new InfluxDB IOx storage engine which enables nearly unlimited series cardinality and SQL query support. Check the right column of your InfluxDB Cloud organization homepage to see which InfluxDB storage engine you’re using.

If powered by TSM, this is the correct documentation.

If powered by IOx, see the IOx-based InfluxDB Cloud documentation.

State of the InfluxDB Cloud (IOx) documentation

The new documentation for InfluxDB Cloud backed by InfluxDB IOx is a work in progress. We are adding new information and content almost daily. Thank you for your patience!

If there is specific information you’re looking for, please submit a documentation issue.