全部产品
Search
文档中心

Time Series Database:CLI dari TSDB untuk InfluxDB®

更新时间:Jul 06, 2025

CLI influx dari TSDB untuk InfluxDB® menyediakan shell interaktif untuk API HTTP. Anda dapat menggunakan CLI influx untuk menulis data secara manual atau mengimpor data dari file, menjalankan query data secara interaktif, serta melihat hasil query dalam berbagai format.

Unduh CLI

Unduh paket biner CLI yang sesuai dengan sistem operasi Anda melalui tautan berikut:

Ekstrak paket biner yang telah diunduh dan masuk ke folder hasil ekstraksi. Di dalamnya, Anda akan menemukan CLI influx. Pada Windows, nama file adalah influx.exe.

Memulai influx

Jalankan influx di terminal cmd. Setelah terhubung ke instansi TSDB untuk InfluxDB®, Anda akan melihat output berikut:

$ ./influx -ssl -username "myname" -password "mypassword" -host ts-xxxxxx.influxdata.rds.aliyuncs.com -port 3242
Connected to https://<Endpoint>:3242 version 1.8.x
InfluxDB shell version: 1.8.x

TSDB untuk InfluxDB® menggunakan protokol SSL untuk memastikan keamanan transmisi data. Saat terhubung ke instansi TSDB untuk InfluxDB®, Anda harus menyetel lima parameter berikut: -ssl, -username, -password, -host, dan -port.

Deskripsi Parameter

  • -ssl: Menentukan bahwa server TSDB untuk InfluxDB® terhubung melalui HTTPS.

  • -username: Menentukan nama pengguna untuk login ke instansi TSDB untuk InfluxDB® Anda.

  • -password: Menentukan kata sandi untuk login ke instansi TSDB untuk InfluxDB® Anda.

  • -host: Menentukan titik akhir instansi TSDB untuk InfluxDB® Anda. Ganti ts-xxxxxx dengan ID instansi TSDB untuk InfluxDB® Anda.

  • -port: Menentukan port jaringan. Jika terhubung melalui virtual private cloud (VPC), atur parameter ini ke 8086. Jika terhubung melalui Internet, atur parameter ini ke 3242.

Setelah CLI influx dimulai, Anda dapat menjalankan pernyataan InfluxQL atau perintah CLI di terminal. Untuk menjalankan pernyataan Flux, setel parameter -type ke flux. Gunakan perintah help untuk melihat daftar perintah yang tersedia. Untuk menghentikan query InfluxQL yang sedang berjalan, tekan Ctrl+C.

Variabel Lingkungan

Anda dapat mengonfigurasi variabel lingkungan berikut untuk klien influx. Variabel dapat ditulis dalam huruf kecil atau besar, namun huruf besar lebih disarankan.

HTTP_PROXY

Menentukan server proxy yang digunakan untuk HTTP.

Format: [protocol://][:port]

HTTP_PROXY=http://localhost:1234

HTTPS_PROXY

Menentukan server proxy yang digunakan untuk HTTPS. Jika kedua variabel HTTP_PROXY dan HTTPS_PROXY disetel, HTTPS_PROXY memiliki prioritas.

Format: [protocol://][:port]

HTTPS_PROXY=https://localhost:1443

NO_PROXY

Menentukan host yang tidak menggunakan proxy. Jika variabel ini disetel ke asterisk (*), semua host tidak menggunakan proxy.

Format: Daftar host dipisahkan koma.

NO_PROXY=123.45.67.89,123.45.67.90

Flag influx

Saat memulai influx, Anda dapat melewatkan flag ke influx. Jalankan perintah $ influx --help untuk melihat semua flag yang tersedia. Bagian ini memberikan deskripsi singkat untuk setiap flag yang didukung oleh influx, serta penjelasan rinci tentang cara menggunakan flag -execute, -format, dan -import.

-compressed

Gunakan flag ini jika file impor dikompresi. Flag -compressed harus digunakan bersamaan dengan flag -import.

Menentukan tingkat konsistensi penulisan.

-database 'nama database'

Menentukan database ke mana CLI influx terhubung.

-execute '<perintah>'

Menjalankan perintah InfluxQL lalu keluar.

-format 'jsoncsvcolumn'

Menentukan format respons server.

-host '<hostname>'

Menentukan host ke mana CLI influx terhubung.

-import

Mengimpor data baru dari file atau mengimpor data basis data yang sebelumnya diekspor dari file.

-password '<kata sandi>'

Menentukan kata sandi yang digunakan CLI influx untuk terhubung ke server. Jika flag -password tidak disetel, influx akan meminta Anda memasukkan kata sandi. Anda juga dapat menggunakan variabel lingkungan INFLUX_PASSWORD untuk menentukan kata sandi.

-path

Menentukan jalur file yang akan diimpor. Flag -path harus digunakan bersamaan dengan flag -import.

-port 'nomor port'

Menentukan port ke mana CLI influx terhubung. Secara default, TSDB untuk InfluxDB® menggunakan port 3242.

-pps

Menentukan jumlah titik data yang dapat diimpor per detik. Secara default, flag -pps diatur ke 0 dan influx tidak membatasi kecepatan impor data. Flag -pps harus digunakan bersamaan dengan flag -import.

-precision 'rfc3339hmsmsuns'
Menentukan format dan presisi timestamp untuk query dan penulisan data: rfc3339 (YYYY-MM-DDTHH:MM:SS.nnnnnnnnnZ), h (jam), m (menit), s (detik), ms (milidetik), u (mikrodetik), dan ns (nanodetik). Presisi default adalah ns.
-pretty

Mengaktifkan pencetakan keluaran cantik untuk data berformat JSON guna meningkatkan keterbacaan.

-ssl

Menggunakan HTTPS untuk permintaan.

-type

Menentukan shell interaktif yang ingin digunakan. Nilai default adalah influxql. Untuk menggunakan shell Flux Read-Eval-Print Loop (REPL), setel flag -type ke flux.

-username 'nama pengguna'

Menentukan nama pengguna yang digunakan CLI influx untuk terhubung ke server. Anda juga dapat menggunakan variabel lingkungan INFLUX_USERNAME untuk menentukan nama pengguna.

-version

Menampilkan versi TSDB untuk InfluxDB® lalu keluar.

Jalankan perintah InfluxQL dan keluar menggunakan -execute

Untuk menanyakan data dari semua basis data yang tersedia, jalankan query berikut:

$ influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -execute 'SHOW DATABASES'
name: databases
---------------
name
NOAA_water_database
_internal
telegraf
pirates

Untuk menanyakan data dari basis data tertentu dan mengubah presisi timestamp pada saat yang sama, jalankan query berikut:

$ influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -execute 'SELECT * FROM "h2o_feet" LIMIT 3' -database="NOAA_water_database" -precision=rfc3339
name: h2o_feet
--------------
time                     level description     location      water_level
2015-08-18T00:00:00Z     below 3 feet          santa_monica  2.064
2015-08-18T00:00:00Z     between 6 and 9 feet  coyote_creek  8.12
2015-08-18T00:06:00Z     between 6 and 9 feet  coyote_creek  8.005

Tentukan format respons server menggunakan -format

Format default adalah column.

$ influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -format=column
[...]
> SHOW DATABASES
name: databases
---------------
name
NOAA_water_database
_internal
telegraf
pirates

Ubah format menjadi csv.

$ influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -format=csv
[...]
> SHOW DATABASES
name,name
databases,NOAA_water_database
databases,_internal
databases,telegraf
databases,pirates

Ubah format menjadi json.

$ influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -format=json
[...]
> SHOW DATABASES
{"results":[{"series":[{"name":"databases","columns":["name"],"values":[["NOAA_water_database"],["_internal"],["telegraf"],["pirates"]]}]}]}

Ubah format menjadi json dan aktifkan pencetakan keluaran cantik.

$ influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -format=json -pretty
[...]
> SHOW DATABASES
{
    "results": [  
        {
            "series": [
                {
                    "name": "databases",
                    "columns": [
                        "name"
                    ],
                    "values": [
                        [
                            "NOAA_water_database"                       
                        ],
                        [
                            "_internal"
                        ],
                        [
                            "telegraf"
                        ],
                        [
                            "pirates"
                        ]
                    ]
                }
            ]
        }
    ]
}

Impor data dari file menggunakan -import

File impor terdiri dari dua bagian:

Contoh:

Misalkan sebuah basis data bernama pirates dan kebijakan retensi bernama oneday telah dibuat.

File datarrr.txt:

# DML
# CONTEXT-DATABASE: pirates
# CONTEXT-RETENTION-POLICY: oneday
treasures,captain_id=dread_pirate_roberts value=801 1439856000
treasures,captain_id=flint value=29 1439856000
treasures,captain_id=sparrow value=38 1439856000
treasures,captain_id=tetra value=47 1439856000
treasures,captain_id=crunch value=109 1439858880

Perintah:

$influx -ssl -username <Nama Pengguna> -password <Kata Sandi> -host <Titik Akhir> -port 3242 -import -path=datarrr.txt -precision=s

Hasil:

2015/12/22 12:25:06 Processed 0 commands
2015/12/22 12:25:06 Processed 5 inserts
2015/12/22 12:25:06 Failed 0 inserts
Deskripsi

Sebelum menggunakan -import, perhatikan hal berikut:

  • -pps

    Anda dapat menggunakan flag -pps untuk menentukan jumlah titik data yang dapat diimpor per detik. Pengaturan ini diterapkan saat titik data ditulis ke basis data. Secara default, flag -pps diatur ke 0.

    influx

    tidak membatasi kecepatan impor data.

  • Anda dapat mengimpor data dari file .gz dengan menyertakan flag berikut:

    -compressed.

    .

  • Anda harus menyediakan timestamp untuk titik data dalam file. Jika tidak, TSDB untuk InfluxDB® akan menetapkan timestamp yang sama untuk titik data tanpa timestamp. Ini dapat menyebabkan penimpaan data yang tidak diinginkan.

  • Jika file data Anda berisi lebih dari 5.000 titik data, Anda mungkin perlu membagi file menjadi beberapa file yang lebih kecil. Ini memungkinkan Anda menulis data ke TSDB untuk InfluxDB® dalam batch. Kami merekomendasikan menyertakan 5.000 hingga 10.000 titik data dalam setiap batch. Jika Anda menyertakan jumlah titik data yang lebih kecil dalam setiap batch, sejumlah permintaan HTTP yang lebih besar harus dikirim, yang mengurangi performa. Secara default, periode timeout untuk setiap permintaan HTTP adalah lima detik. TSDB untuk InfluxDB® mencoba menulis titik data setelah timeout permintaan, tetapi titik tersebut mungkin gagal ditulis.

Perintah influx

Jalankan perintah help di influx CLI untuk mendapatkan daftar sebagian perintah yang tersedia.

Perintah

Bagian ini memberikan deskripsi singkat untuk setiap perintah yang tersedia, serta penjelasan rinci tentang cara menggunakan perintah insert.

auth

Meminta Anda memasukkan nama pengguna dan kata sandi. CLI influx memerlukan informasi otentikasi saat Anda mengirim permintaan ke basis data. Anda juga dapat menggunakan variabel lingkungan INFLUX_USERNAME untuk menentukan nama pengguna dan INFLUX_PASSWORD untuk menentukan kata sandi.

chunked

Mengaktifkan respons berbasis chunk dari server saat Anda mengirim permintaan query. Secara default, respons berbasis chunk diaktifkan.

chunk size <size>

Menentukan ukuran untuk setiap chunk dari respons. Ukuran chunk default adalah 10.000. Anda dapat mengatur ulang ukuran chunk ke nilai default dengan menyetel parameter ukuran ke 0.

clear [ database  db  retention policy  rp ]

Menghapus konteks untuk basis data atau kebijakan retensi.

connect <host:port>

Terhubung ke server lain tanpa keluar dari shell. Secara default, CLI influx terhubung ke localhost:8086. Jika Anda tidak menentukan parameter host atau port, CLI influx menggunakan pengaturan default untuk parameter yang dibiarkan kosong.

consistency <level>

Menentukan tingkat konsistensi penulisan. Nilai yang valid adalah any, one, quorum, dan all.

Ctrl+C

Menghentikan query yang sedang berjalan. Perintah ini berguna jika Anda ingin menghentikan query interaktif jangka panjang di mana sistem membutuhkan waktu terlalu lama untuk merespons karena mencoba mengembalikan sejumlah besar data.

exit quit Ctrl+D

Keluar dari shell influx.

format <format>

Menentukan format respons server. Nilai yang valid adalah json, csv, dan column.

history

Menampilkan riwayat perintah. Untuk menjalankan perintah historis di shell, gunakan panah atas. CLI influx menyimpan 1.000 perintah terbaru Anda di file .influx_history yang terletak di direktori home Anda.

insert

Menulis data menggunakan protokol baris.

precision <format>

Menentukan format dan presisi timestamp untuk query dan penulisan data: rfc3339 (YYYY-MM-DDTHH:MM:SS.nnnnnnnnnZ), h (jam), m (menit), s (detik), ms (milidetik), u (mikrodetik), dan ns (nanodetik). Presisi default adalah ns.

pretty

Mengaktifkan pencetakan keluaran cantik untuk data berformat JSON guna meningkatkan keterbacaan.

settings

Mengembalikan pengaturan saat ini dari shell, termasuk Host, Username, Database, Retention Policy, Pretty, Chunked, Chunk Size, Format, dan Write Consistency.

use [ "<database_name>"  "<database_name>"."<retention policy_name>" ]

Menentukan basis data dan/atau kebijakan retensi saat ini. Jika basis data dan/atau kebijakan retensi saat ini ditentukan di CLI influx, Anda tidak perlu menentukannya dalam query. Jika Anda tidak menentukan kebijakan retensi, CLI influx menanyakan data dari basis data berdasarkan kebijakan retensi default (DEFAULT).

Tulis data ke TSDB untuk InfluxDB® dengan menjalankan perintah insert.

Untuk menulis data ke TSDB untuk InfluxDB®, masukkan insert, lalu masukkan data yang menggunakan protokol baris. Anda dapat menjalankan perintah insert into <retention policy> <line protocol> untuk menulis data berdasarkan kebijakan retensi yang ditentukan.

Dalam contoh berikut, data ditulis ke satu field dalam pengukuran treasures yang memiliki tag captain_id = pirate_king. CLI influx menulis data ke basis data berdasarkan kebijakan retensi default (DEFAULT).

> INSERT treasures,captain_id=pirate_king value=2
>

Dalam contoh berikut, titik data yang sama yang digunakan dalam contoh sebelumnya ditulis ke basis data berdasarkan kebijakan retensi yang ada oneday.

> INSERT INTO oneday treasures,captain_id=pirate_king value=2
Using retention policy oneday
>

Query

Anda dapat menjalankan semua query InfluxQL di CLI influx.

Untuk informasi lebih lanjut tentang InfluxQL, lihat Ikhtisar eksplorasi data, Eksplorasi skema, dan Manajemen basis data.