文档文档

创建数据库

使用 influxdb3 create database 命令HTTP APIInfluxDB 3 Explorer 在 InfluxDB 3 Core 中创建数据库。

使用 influxdb3 CLI 创建数据库

使用 influxdb3 create database 命令 创建数据库。提供以下信息

Core 中的数据保留期是不可变的

在 InfluxDB 3 Core 中,数据保留期只能在创建数据库时设置,之后无法更改。如果需要更改数据保留期,则必须创建一个具有所需数据保留期的新数据库,然后迁移您的数据。

# Create a database with a 30-day retention period
influxdb3 create database --retention-period 30d 
DATABASE_NAME
# Create a database with a 90-day retention period using authentication influxdb3 create database \ --retention-period 90d \ --token
AUTH_TOKEN
\
DATABASE_NAME
# Create a database with infinite retention (default) influxdb3 create database
DATABASE_NAME

替换以下内容:

  • DATABASE_NAME:要创建的数据库的名称
  • AUTH_TOKEN:您的 管理员令牌

使用 HTTP API 创建数据库

要使用 HTTP API 创建数据库,请将 POST 请求发送到 /api/v3/configure/database 端点

POST localhost:8181/api/v3/configure/database

在您的请求中包含以下内容

  • Headers:
    • Content-Type: application/json
    • Authorization: Bearer 加上您的 管理员令牌
  • 请求体 (JSON 对象)
    • db (string, required): 数据库名称
    • retention_period (string, optional): 数据保留期。如果省略,数据不会过期。

Core 中的数据保留期是不可变的

在 InfluxDB 3 Core 中,数据保留期只能在创建数据库时设置,之后无法更改。如果需要更改数据保留期,则必须创建一个具有所需数据保留期的新数据库,然后迁移您的数据。

# Create a database with a 30-day retention period
curl --request POST "localhost:8181/api/v3/configure/database" \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer 
AUTH_TOKEN
"
\
--data '{ "db": "
DATABASE_NAME
",
"retention_period": "30d" }' # Create a database with a 90-day retention period curl --request POST "localhost:8181/api/v3/configure/database" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer
AUTH_TOKEN
"
\
--data '{ "db": "
DATABASE_NAME
",
"retention_period": "90d" }' # Create a database with infinite retention (default) curl --request POST "localhost:8181/api/v3/configure/database" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer
AUTH_TOKEN
"
\
--data '{ "db": "
DATABASE_NAME
"
}'

替换以下内容:

  • DATABASE_NAME:要创建的数据库的名称
  • AUTH_TOKEN:您的 管理员令牌

响应

成功请求将返回 HTTP 状态码 200 以及数据库配置。

使用 InfluxDB 3 Explorer 创建数据库

当前,您无法在 Explorer 中创建数据库时设置数据保留期。要创建具有数据保留期的数据库,请参阅以下任一方法

Core 中的数据保留期是不可变的

在 InfluxDB 3 Core 中创建数据库后,您无法更改其数据保留期。

使用 InfluxDB 3 Explorer Web 界面在 InfluxDB 3 Core 中创建数据库

  1. 如果您还没有这样做,请参阅如何 开始使用 Explorer 并连接到您的 InfluxDB 3 Core 服务器
  2. 在 Explorer 中,单击左侧导航栏中的 Manage Databases
  3. 单击 + Create New
  4. 输入数据库名称。
  5. 单击 Create Database

有关更多信息,请参阅 使用 InfluxDB 3 Explorer 管理数据库

数据保留期

默认情况下,数据不会过期。创建数据库时,设置一个数据保留期以自动删除过期数据并优化存储。

数据保留期语法

数据保留期值是时间持续时间值,由一个数字加上一个持续时间单位组成。例如,30d 表示 30 天。数据保留期值不能为负数,也不能包含空格。

有效的持续时间单位包括

  • m:分钟
  • h:小时
  • d:天
  • w:周
  • mo:月
  • y:年

数据保留期限制

  • 数据保留的最小值:实际最小数据保留期为 1 小时 (1h)。
  • 零持续时间周期:允许将数据保留期设置为 0<unit>(例如 0d0h),但这会将所有数据标记为在查询时立即删除。这与 InfluxDB 1.x 和 2.x 不同,在这些版本中 0d 表示无限期保留。
  • 无限期保留:使用 none 设置无限期保留。

有关数据保留期的更多信息,请参阅 数据保留

Core 中的数据保留期是不可变的

在 InfluxDB 3 Core 中,数据保留期只能在创建数据库时设置,之后无法更改。如果需要更改数据保留期,则必须创建一个具有所需数据保留期的新数据库,然后迁移您的数据。

对于可变数据保留期和表级数据保留,请考虑升级到 InfluxDB 3 Enterprise

数据库命名限制

数据库名称必须遵守以下命名限制

  • 长度:最多 64 个字符
  • 允许的字符:字母数字字符 (a-z, A-Z, 0-9)、下划线 (_)、连字符 (-) 和正斜杠 (/)
  • 禁止的字符:不得包含空格、标点符号或其他特殊字符
  • 起始字符:应以字母或数字开头,不应以下划线 (_) 开头
  • 区分大小写:数据库名称区分大小写

以下划线开头的名称保留供系统使用

以(_)下划线开头的名称可能保留供 InfluxDB 系统使用。虽然 InfluxDB 3 Core 可能不会明确拒绝这些名称,但使用它们存在与当前或未来系统功能冲突的风险,并可能导致意外行为或数据丢失。

有效的数据库名称示例

mydb
sensor_data
prod-metrics
logs/application
webserver123

无效的数据库名称示例

my database        # Contains whitespace
sensor.data        # Contains period
app@server         # Contains special character
_internal          # Starts with underscore (reserved)
very_long_database_name_that_exceeds_sixty_four_character_limit  # Too long

有关所有 InfluxDB 标识符命名限制的全面信息,请参阅 命名限制和约定

InfluxQL DBRP 命名约定

在 InfluxDB 1.x 中,数据存储在数据库数据保留策略中。在 InfluxDB 3 Core 中,数据库和数据保留策略已合并为数据库,数据库具有数据保留期,但数据保留策略不再是数据模型的一部分。由于 InfluxQL 使用 1.x 数据模型,因此数据库必须映射到 v1 数据库和数据保留策略 (DBRP) 才能使用 InfluxQL 进行查询。

命名要用 InfluxQL 查询的数据库时,请使用以下命名约定自动将 v1 DBRP 组合映射到 InfluxDB 3 Core 数据库

database_name/retention_policy_name
数据库命名示例
v1 数据库名称v1 数据保留策略名称新数据库名称
dbrpdb/rp
telegrafautogentelegraf/autogen
webmetrics1w-downsampledwebmetrics/1w-downsampled

数据库限制

最大数据库数量: 5

有关 InfluxDB 3 Core 数据库、表和列限制的更多信息,请参阅 数据库、表和列限制


此页面是否有帮助?

感谢您的反馈!


InfluxDB 3.8 新特性

InfluxDB 3.8 和 InfluxDB 3 Explorer 1.6 的主要增强功能。

查看博客文章

InfluxDB 3.8 现已适用于 Core 和 Enterprise 版本,同时发布了 InfluxDB 3 Explorer UI 的 1.6 版本。本次发布着重于操作成熟度,以及如何更轻松地部署、管理和可靠地运行 InfluxDB。

更多信息,请查看

InfluxDB Docker 的 latest 标签将指向 InfluxDB 3 Core

在 **2026 年 2 月 3 日**,InfluxDB Docker 镜像的 latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。

如果使用 Docker 来安装和运行 InfluxDB,latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。例如,如果使用 Docker 运行 InfluxDB v2,请将 latest 版本标签替换为 Docker pull 命令中的特定版本标签 — 例如

docker pull influxdb:2