All Products
Search
Document Center

Time Series Database:FAQ

Last Updated:Aug 26, 2026

Topik ini menjelaskan pesan error umum TSDB For InfluxDB® dan menyediakan solusinya.

Bagaimana menangani error "database name required"?

Error database name required terjadi ketika kueri yang mencakup SHOW tidak menentukan database. Untuk menentukan database, Anda dapat menggunakan klausa ON dalam kueri SHOW, perintah USE <database_name> di command-line interface (CLI), atau parameter db dalam permintaan HTTP API.

Kueri SHOW yang dapat menyebabkan error ini meliputi SHOW RETENTION POLICIES, SHOW SERIES, SHOW MEASUREMENTS, SHOW TAG KEYS, SHOW TAG VALUES, dan SHOW FIELD KEYS.

Bagaimana menangani error "max series per database exceeded: < >"?

Error max series per database exceeded terjadi ketika operasi write menyebabkan jumlah series dalam sebuah database melebihi batas maksimum yang diizinkan. Jumlah maksimum series per database ditentukan oleh tipe instans Anda.

Informasi dalam < > menunjukkan measurement dan tag set dari series yang melebihi batas max-series-per-database.

Bagaimana menangani error "found < >, expected identifier at line < >, char < >"?

  • Sintaksis InfluxQL

    Error expected identifier terjadi ketika TSDB For InfluxDB® tidak menemukan identifier yang diharapkan dalam suatu kueri. Identifier adalah nama untuk continuous query, database, field key, measurement, retention policy, subscription, tag key, dan username. Error ini biasanya menunjukkan adanya masalah pada sintaksis kueri Anda.

    Contoh:

    > SELECT * FROM WHERE "blue"= true
    ERR: error parsing query: found WHERE, expected identifier at line 1, char 15

    Kueri ini kehilangan nama measurement antara FROM dan WHERE.

  • Kata kunci InfluxQL

    Dalam beberapa kasus, error expected identifier terjadi ketika identifier dalam kueri merupakan kata kunci InfluxQL. Untuk mengkueri identifier yang juga merupakan kata kunci InfluxQL, sertakan identifier tersebut dalam tanda kutip ganda.

    Error expected identifier dapat terjadi ketika identifier dalam kueri merupakan kata kunci InfluxQL. Untuk mengkueri identifier semacam itu, sertakan dalam tanda kutip ganda.

    Contoh

    > SELECT duration FROM runs
    ERR: error parsing query: found DURATION, expected identifier, string, number, bool at line 1, char 8

    Dalam kueri tersebut, field key duration merupakan kata kunci InfluxQL. Untuk menghindari error, sertakan duration dalam tanda kutip ganda:

    > SELECT "duration" FROM runs

Bagaimana menangani error "found < >, expected string at line < >, char < >"?

Error expected string terjadi ketika TSDB For InfluxDB® mengharapkan nilai string dalam kueri tetapi tidak menemukannya.

Bagaimana menangani error "mixing aggregate and non-aggregate queries is not supported"?

Error mixing aggregate and non-aggregate terjadi ketika pernyataan SELECT mencakup fungsi agregat sekaligus field key atau tag key yang tidak diagregasi.

Fungsi agregat mengembalikan satu hasil terhitung. Untuk field atau tag yang tidak diagregasi, tidak ada nilai tunggal yang jelas untuk dikembalikan.

Contoh

Data mentah: Measurement peg memiliki dua field (square dan round) dan satu tag (force):

name: peg
---------
time                   square   round   force
2016-10-07T18:50:00Z281
2016-10-07T18:50:10Z4122
2016-10-07T18:50:20Z6144
2016-10-07T18:50:30Z7153

Kueri 1:

> SELECT mean("square"),"round" FROM "peg"
ERR: error parsing query: mixing aggregate and non-aggregate queries is not supported

Kueri 1 mencakup fungsi agregat dan field terpisah.

mean("square") mengembalikan nilai agregat, yaitu nilai rata-rata dari empat nilai square dalam measurement peg. Namun, tidak ada nilai tunggal yang jelas untuk dikembalikan dari empat nilai field round yang tidak diagregasi.

Kueri 2:

> SELECT mean("square"),"force" FROM "peg"
ERR: error parsing query: mixing aggregate and non-aggregate queries is not supported

Kueri 2 mencakup fungsi agregat dan tag terpisah.

mean("square") mengembalikan nilai agregat, yaitu nilai rata-rata dari empat nilai square dalam measurement peg. Namun, tidak ada nilai tunggal yang jelas untuk dikembalikan dari empat nilai tag force yang tidak diagregasi.

Bagaimana menangani error "time and *influxql.VarRef are not compatible"?

Error time and \*influxql.VarRef are not compatible terjadi ketika Anda menyertakan string tanggal dan waktu dalam tanda kutip ganda dalam kueri. String tanggal dan waktu harus disertakan dalam tanda kutip tunggal.

Contoh

Menyertakan string tanggal dan waktu dalam tanda kutip ganda:

> SELECT "water_level" FROM "h2o_feet" WHERE "location"='santa_monica' AND time >="2015-08-18T00:00:00Z" AND time <="2015-08-18T00:12:00Z"
ERR: invalid operation: time and *influxql.VarRef are not compatible

Menyertakan string tanggal dan waktu dalam tanda kutip tunggal:

> SELECT "water_level" FROM "h2o_feet" WHERE "location"='santa_monica' AND time >='2015-08-18T00:00:00Z' AND time <='2015-08-18T00:12:00Z'

name: h2o_feet
time                   water_level
---------------
2015-08-18T00:00:00Z2.064
2015-08-18T00:06:00Z2.116
2015-08-18T00:12:00Z2.028

Bagaimana menangani error "bad timestamp"?

  • Sintaksis waktu

    Error bad timestamp terjadi ketika line protocol mencakup stempel waktu yang tidak dalam format UNIX timestamp.

    Contoh

    > INSERT pineapple value=1'2015-08-18T23:00:00Z'
    ERR:{"error":"unable to parse 'pineapple value=1 '2015-08-18T23:00:00Z'': bad timestamp"}

    Line protocol di atas menggunakan stempel waktu dalam format RFC3339. Untuk menghindari error dan berhasil menulis titik data ke TSDB For InfluxDB®, ganti stempel waktu tersebut dengan UNIX timestamp:

    > INSERT pineapple,fresh=true value=11439938800000000000
  • Sintaksis line protocol

    Dalam beberapa kasus, error bad timestamp terjadi karena kesalahan sintaksis umum dalam line protocol.

    Contoh

    Write 1:

    > INSERT hens location=2 value=9
    ERR:{"error":"unable to parse 'hens location=2 value=9': bad timestamp"}

    Pada Write 1, line protocol menggunakan spasi alih-alih koma untuk memisahkan measurement hen dan tag location=2. TSDB For InfluxDB® menginterpretasikan field value=9 sebagai stempel waktu dan mengembalikan error.

    Untuk menghindari error, gunakan koma alih-alih spasi untuk memisahkan measurement dan tag:

    > INSERT hens,location=2 value=9

    Write 2:

    > INSERT cows,name=daisy milk_prod=3 happy=3
    ERR:{"error":"unable to parse 'cows,name=daisy milk_prod=3 happy=3': bad timestamp"}

    Pada Write 2, line protocol menggunakan spasi alih-alih koma untuk memisahkan field milk_prod=3 dan happy=3. Akibatnya, TSDB For InfluxDB® menginterpretasikan happy=3 sebagai stempel waktu dan mengembalikan error.

    Untuk menghindari error, pisahkan kedua field tersebut dengan koma alih-alih spasi:

    > INSERT cows,name=daisy milk_prod=3,happy=3

Bagaimana menangani error "time outside range"?

Error time outside range terjadi ketika stempel waktu dalam line protocol berada di luar rentang waktu valid untuk TSDB For InfluxDB®.

Stempel waktu valid minimum adalah -9223372036854775806 atau 1677-09-21T00:12:43.145224194Z, dan stempel waktu valid maksimum adalah 9223372036854775806 atau 2262-04-11T23:47:16.854775806Z.

Bagaimana menangani error "engine: cache maximum memory size exceeded"?

Error cache maximum memory size exceeded terjadi ketika kecepatan write yang tinggi menyebabkan ukuran cache sementara di sisi server melebihi ambang batas yang telah ditentukan. Ambang batas tersebut ditentukan oleh tipe instans Anda.