Le service Cloud TSDB for InfluxDB étant sur le point d'être arrêté, vous devez migrer vos données existantes. Cette rubrique explique comment utiliser les outils backup et restore d'InfluxDB pour migrer les données historiques de votre instance cloud vers une instance InfluxDB 1.x auto-hébergée, shard par shard.
TSDB for InfluxDB® sera officiellement arrêté le 23 octobre 2026. Afin de garantir la continuité de vos services, effectuez la migration de vos données avant cette date. Pour plus de détails sur cet arrêt, consultez l'avis d'arrêt de TSDB for InfluxDB®.
Prérequis
Mettez à niveau votre instance cloud TSDB for InfluxDB vers la version 1.8.14 ou ultérieure.
Soumettez un ticket via le système de tickets Alibaba Cloud afin de contacter l'assistance technique et d'activer le port de sauvegarde 8088.
Achetez une instance ECS avec les mêmes spécifications, dans la même région, la même zone, le même VPC et le même vSwitch que votre instance TSDB for InfluxDB. Cette instance ECS servira à la migration et hébergera l'instance InfluxDB auto-hébergée. Pour plus d'informations, consultez Créer une instance ECS.
Téléchargez InfluxDB 1.8.10 open source, puis installez-le, démarrez-le et configurez-le de base pour servir d'instance de destination auto-hébergée.
Consultez la section Backup and Restore de la documentation officielle d'InfluxDB pour comprendre le processus de sauvegarde et de restauration.
Vérifiez que l'espace de stockage disponible sur l'instance cloud TSDB for InfluxDB est d'au moins 40 %. L'opération de sauvegarde occupe temporairement de l'espace de stockage sur l'instance. Si l'espace libre est insuffisant, la sauvegarde peut échouer et affecter le fonctionnement normal de l'instance.
Vérifiez que l'utilisation de la mémoire de l'instance cloud TSDB for InfluxDB ne dépasse pas 60 %. Si l'utilisation de la mémoire est supérieure à 60 %, mettez à niveau les spécifications de l'instance avant d'effectuer la sauvegarde et la migration.
Considérations importantes
La sauvegarde et la restauration migrent uniquement les données historiques. Les données incrémentielles écrites après la sauvegarde ne sont pas garanties d'être migrées. Nous vous recommandons d'écrire les données simultanément dans le service cloud TSDB for InfluxDB et dans l'instance InfluxDB auto-hébergée avant de migrer les données historiques.
Les fichiers de sauvegarde occupent de l'espace de stockage sur l'instance ECS qui héberge l'instance InfluxDB auto-hébergée. Prévoyez au moins deux fois la capacité de stockage correspondant à votre volume de données.
La migration des données utilise une stratégie d'importation sérielle par shard temporel. Effectuez la migration complète des données pour l'ensemble de la base de données au sein d'un shard temporel avant de passer au shard suivant.
Présentation du flux de travail
La migration s'effectue shard par shard. Le flux de travail complet est le suivant :
Assurez-vous que tous les prérequis sont satisfaits.
Exécutez
SHOW SHARDSpour obtenir les informations relatives à tous les shards.Sélectionnez un shard et exécutez
influxd backupsur l'instance ECS pour sauvegarder les données localement.Exécutez
influxd restorepour restaurer la sauvegarde dans une base de données temporaire sur l'instance InfluxDB auto-hébergée.Utilisez
SELECT INTOpour écrire les données de la base de données temporaire vers la base de données de destination.Vérifiez l'intégrité des données dans la base de données de destination.
Supprimez la base de données temporaire.
Répétez les étapes 3 à 7 pour les shards restants jusqu'à ce que tous les shards soient migrés.
Procédure
Afficher la liste des shards
Avant d'effectuer une sauvegarde, exécutez l'instruction InfluxQL suivante pour afficher les informations de tous les shards et déterminer ceux à migrer :
SHOW SHARDS
À partir du résultat, récupérez les champs id, database et retention_policy pour chaque shard. Ces champs servent de paramètres dans les commandes de sauvegarde suivantes. Vous devez effectuer les opérations de sauvegarde et de restauration individuellement pour chaque shard.
backup
Exécutez la commande de sauvegarde sur l'instance ECS qui héberge l'instance InfluxDB auto-hébergée pour sauvegarder les données shard par shard. Vous devez spécifier le nom de la base de données, le nom de la politique de rétention et l'ID du shard pour chaque sauvegarde.
-
Syntaxe
influxd backup -portable \ -host <source instance VPC address:8088> \ -db <database name> \ -rp <retention policy name> \ -shard <shard ID> \ <backup directory> -
Paramètres
|
**Paramètre**
|
**Description**
| | --- | --- | |
`-portable`
|
Utilise le format de sauvegarde portable.
| |
`-host`
|
L'endpoint VPC et le port de sauvegarde de l'instance cloud TSDB for InfluxDB, au format `ts-xxx:8088`.
| |
`-db`
|
Le nom de la base de données à sauvegarder.
| |
`-rp`
|
Le nom de la politique de rétention à sauvegarder.
| |
`-shard`
|
L'ID du shard à sauvegarder. Exécutez `SHOW SHARDS` pour obtenir les ID des shards.
| |
``
|
Le répertoire où les fichiers de sauvegarde sont enregistrés, par exemple `/root/tmp/influx_backup`.
| -
Exemple
influxd backup -portable \ -host ts-xxx.influxdata.tsdb.aliyuncs.com:8088 \ -db example_db \ -rp example_rp \ -shard 123 \ /root/tmp/influx_backupRemarqueDans cet exemple, remplacez
ts-xxx.influxdata.tsdb.aliyuncs.com:8088,example_db,example_rp,123et/root/tmp/influx_backuppar les valeurs appropriées à votre périmètre de migration réel.
restore
Reportez-vous à la documentation officielle pour restaurer les données dans une base de données existante.
-
Sur l'instance ECS qui héberge l'instance InfluxDB auto-hébergée, exécutez la commande de restauration pour restaurer les données dans une base de données temporaire.
-
Syntaxe
influxd restore -portable \ -db <backed-up database name> \ -rp <backed-up retention policy name> \ -shard <shard ID> \ -newdb <temporary database name> \ <backup directory> -
Paramètres
|
**Paramètre**
|
**Description**
| | --- | --- | |
`-portable`
|
Lit le format de sauvegarde portable.
| |
`-db`
|
Le nom de la base de données sauvegardée.
| |
`-rp`
|
Le nom de la politique de rétention sauvegardée.
| |
`-shard`
|
L'ID du shard sauvegardé.
| |
`-newdb`
|
Le nom de la base de données temporaire dans laquelle restaurer les données.
| |
``
|
Le répertoire où les données de sauvegarde sont stockées, par exemple `/root/tmp/influx_backup`.
| -
Exemple
influxd restore -portable \ -db example_db \ -rp example_rp \ -shard 123 \ -newdb example_tmp_db \ /root/tmp/influx_backupDans cet exemple, remplacez
example_db,example_rp,123,example_tmp_dbet/root/tmp/influx_backuppar les valeurs appropriées à votre contenu de sauvegarde réel.
-
-
Utilisez InfluxQL pour interroger les données de la base de données temporaire et les écrire dans la base de données de destination.
Pour les volumes de données importants,
SELECT INTOpeut générer des données incomplètes en raison de délais d'expiration des requêtes. Vérifiez les points suivants avant l'exécution :Si un délai d'expiration des requêtes est activé (c'est-à-dire si
INFLUXDB_COORDINATOR_QUERY_TIMEOUTest défini), augmentez-le à une valeur suffisamment élevée. Par défaut, InfluxDB n'applique pas de délai d'expiration des requêtes.-
Pour les scénarios impliquant de grands volumes de données, exécutez
SELECT INTOpar lots selon des plages horaires afin d'éviter les délais d'expiration sur une seule requête.SELECT * INTO "example_db"."example_rp".:MEASUREMENT FROM "example_tmp_db"."example_rp"/.*/ GROUP BY *
/.*/est la syntaxe d'expression régulière InfluxQL qui correspond à toutes les measurements. -
Vérifiez l'intégrité des données. Interrogez le nombre de lignes dans la base de données temporaire et dans la base de données de destination. Assurez-vous que les données sont cohérentes avant de passer à l'étape suivante.
SELECT COUNT(*) FROM "example_tmp_db"."example_rp"/.*/ SELECT COUNT(*) FROM "example_db"."example_rp"/.*/ -
Supprimez la base de données temporaire.
DROP DATABASE "example_tmp_db";
FAQ
-
Q : La sauvegarde et la restauration migrent-elles les données incrémentielles ?
R : Non, les données incrémentielles ne sont pas migrées automatiquement.
influxd backupcapture uniquement les données existantes au moment où la sauvegarde est effectuée. Les données écrites après la fin de la sauvegarde ne sont pas incluses. Nous vous recommandons d'écrire les données simultanément dans le service cloud TSDB for InfluxDB et dans l'instance InfluxDB auto-hébergée avant de migrer les données historiques. -
Q : Comment consulter les spécifications de mon instance cloud TSDB for InfluxDB ?
R : Connectez-vous à la console TSDB et accédez à la page Instance Details. Dans la section Configuration Information, consultez les spécifications de l'instance, y compris la capacité de stockage, le CPU, la mémoire de la base de données, le type de disque et la version du moteur.
-
Q : Comment déterminer si une instance reçoit encore du trafic en lecture ou en écriture ?
R : Connectez-vous à la console TSDB et accédez à la page Instance Monitoring. Sélectionnez Engine Monitoring. Consultez la métrique Data Points Written per Second pour confirmer si les requêtes d'écriture sont toujours actives, et vérifiez la métrique Queries per Second pour confirmer si les requêtes de lecture sont toujours actives.
-
Q : Comment migrer vers une autre base de données ?
R : Nous vous recommandons de migrer d'abord vers une instance InfluxDB auto-hébergée. Le coût de migration est relativement faible et vous pouvez préserver votre modèle de données existant, votre langage de requête et vos modes d'utilisation client. Lors d'une migration vers une autre base de données, le modèle de données, le langage de requête, la précision temporelle, les types de données et les outils d'importation peuvent différer de ceux d'InfluxDB. Évaluez et validez la migration en fonction des capacités de la base de données cible. Cette rubrique ne fournit pas les étapes de migration pour des bases de données spécifiques.