2015-01-05 36 views
12

Gibt es einen Weg (Plugin oder Tool), um die Daten aus der Datenbank (oder Datenbank selbst) zu exportieren? Ich bin auf der Suche nach dieser Funktion, da ich eine Datenbank vom aktuellen Host zu einem anderen migrieren muss.Daten aus InfluxDB exportieren

Antwort

12

Sie können jede Tabelle Dump und sie durch REST-Schnittstelle laden:

curl "http://hosta:8086/db/dbname/series?u=root&p=root&q=select%20*%20from%20series_name%3B" > series_name.json 
curl -XPOST -d @series_name.json "http://hostb:8086/db/dbname/series?u=root&p=root" 

Oder vielleicht möchten Sie neue Host-Cluster hinzufügen? Es ist einfach und Sie erhalten Master-Master-Replik kostenlos. Cluster Setup

+0

was ist, wenn wir es im csv-Format wollen? – Luv33preet

+0

oder alternativ 'curl -G 'http: // Hosta: 8086/Abfrage?' --data-urlencode "db = dbname" --data-urlencode "q = SELECT * FROM series_name" –

14

Wie Ezotrank sagt, können Sie jede Tabelle ausgeben. Es gibt ein fehlendes "-d" in ezotranks Antwort. Es sollte sein:

curl "http://hosta:8086/db/dbname/series?u=root&p=root&q=select%20*%20from%20series_name%3B" > series_name.json 
curl -XPOST -d @series_name.json "http://hostb:8086/db/dbname/series?u=root&p=root" 

(Ezotrank, sorry, ich habe einfach einen Kommentar direkt auf Ihrer Antwort gepostet, aber ich habe nicht genug Rufpunkte zu tun, dass noch.)

6

Datenexport :

grpcdb ist der Name der DB und die Sicherung wird in diesem Fall im Verzeichnis/opt/data gespeichert.

Daten importieren:

sudo service influxdb stop (Service should not be running) 
influxd restore -metadir /var/lib/influxdb/meta /opt/data 
influxd restore -database grpcdb -datadir /var/lib/influxdb/data /opt/data 
sudo service influxdb start 
+2

Im Umgang mit massiven Datenbanken ist dies wirklich die einzige praktische Methode, dies zu tun. – mogul

+0

Ja, vorausgesetzt, das OP migriert auf einen anderen InfluxDB-Host (hoffentlich der gleichen Version) und nicht auf eine andere Art von Datenbank –

6

Wenn ich curl verwenden, erhalte ich Timeouts, und wenn ich influxd backup seine nicht in einem Format verwende ich lesen kann.

Ich bekomme gute Ergebnisse wie folgt aus:

influx -host influxdb.mydomain.com -database primary -format csv -execute "select time,value from \"continuous\" where channel='ch123'" > outtest.csv 
Verwandte Themen