文档文档

influxctl database create

influxctl database create 命令用于在 InfluxDB 集群中创建一个具有指定保留期限的新数据库。

保留期限定义了数据库中保留数据的最大期限,基于数据的时间戳。保留期限值是一个时间持续值,由数值和持续时间单位组成。例如,30d 表示 30 天。零持续时间的保留期限是无限的,数据不会过期。保留期限值不能为负数或包含空格。

有效的持续时间单位包括
  • m: 分钟
  • h: 小时
  • d: 天
  • w: 周
  • mo: 月
  • y: 年
保留期限值示例
  • 0d: 无限/无
  • 3d: 3 天
  • 6w: 6 周
  • 1mo: 1 个月 (30 天)
  • 1y: 1 年
  • 30d30d: 60 天
  • 2.5d: 60 小时

自定义分区

您可以使用 --template-tag--template-tag-bucket--template-timeformat 标志在创建数据库时覆盖数据库的默认分区模板 (%Y-%m-%d)。使用 Rust strftime 提供时间格式,按特定标签分区,或将标签值分区到指定数量的“桶”中。这些都可用作分区模板的一部分。请务必遵循 分区最佳实践

使用自定义分区时始终提供时间格式

如果使用任何 --template-* 标志为您的数据库定义自定义分区模板,请始终包含带有时间格式的 --template-timeformat 标志,以便在您的分区模板中使用。否则,InfluxDB 会从分区模板中省略时间,并且不会压缩分区。

无法重用已删除的数据库名称

创建新数据库时,您无法重用已删除数据库的名称。如果您尝试重用该名称,API 响应状态代码为 400,并且 message 字段包含以下内容

'iox_proxy.app.CreateDatabase failed to create database: \
rpc error: code = AlreadyExists desc = A namespace with the
name `<DATABASE_NAME>` already exists'

用法

influxctl database create [flags] <DATABASE_NAME>

参数

参数描述
DATABASE_NAMEInfluxDB 数据库名称

标志

标志描述
--retention-period数据库保留期限(默认为 0s,无限)
--max-tables每个数据库的最大表数(默认为 500,0 使用默认值)
--max-columns每个表的最大列数(默认为 250,0 使用默认值)
--template-tag要添加到分区模板的标签(可以包含此标志的多个)
--template-tag-bucket标签和桶的数量,用于将标签值分区到逗号分隔的桶中 - 例如:tag1,100(可以包含此标志的多个)
--template-timeformat分区模板的时间戳格式(默认为 %Y-%m-%d
-h--help输出命令帮助

另请参阅 influxctl 全局标志

示例

创建具有无限保留期限的数据库

influxctl database create mydb

创建具有 30 天保留期限的数据库

influxctl database create \
  --retention-period 30d \
  mydb

创建具有非默认表和列限制的数据库

influxctl database create \
  --max-tables 200 \
  --max-columns 150 \
  mydb

创建具有自定义分区模板的数据库

以下示例创建一个新的 mydb 数据库,并应用一个分区模板,该模板按两个标签(roomsensor-type)以及按天使用时间格式 %Y-%m-%d 进行分区

influxctl database create \
  --template-tag room \
  --template-tag sensor-type \
  --template-tag-bucket customerID,1000 \
  --template-timeformat '%Y-%m-%d' \
  mydb

有关自定义分区的更多信息,请参阅 管理数据分区

查看命令更新


此页内容是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在一样使用它,而无需对您的代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开 Alpha 测试

InfluxDB 3 开源版本现已可用于 Alpha 测试,根据 MIT 或 Apache 2 许可授权。

我们正在发布两个产品作为 Alpha 测试的一部分。

InfluxDB 3 Core 是我们新的开源产品。它是用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何开始使用的更多信息,请查看