文档文档

更新数据库

使用 influxctl database update 命令来更新您的 InfluxDB 集群中的数据库。

  1. 如果您尚未操作,请下载并安装 influxctl CLI

  2. 运行 influxctl database update 命令并提供以下内容

influxctl database update \
  --retention-period 
30d
\
--max-tables
500
\
--max-columns 250 \
DATABASE_NAME

在您的命令中替换以下内容

  • DATABASE_NAME:您的 InfluxDB Clustered 数据库

数据库名称无法更新

influxctl database update 命令使用数据库名称来标识要应用更新的数据库。数据库名称本身无法更新。

数据库属性

保留期语法 (influxctl CLI)

使用 --retention-period 标志来定义数据库的特定保留期。保留期值是由数值和持续时间单位组成的时间持续值。例如,30d 表示 30 天。零持续时间(例如,0s0d)保留期是无限的,数据不会过期。保留期值不能为负数或包含空格。

有效的持续时间单位包括

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

示例保留期值

  • 0d:无限/无
  • 3d:3 天
  • 6w:6 周
  • 1mo:1 个月(30 天)
  • 1y:1 年
  • 30d30d:60 天
  • 2.5d:60 小时

数据库命名限制

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

  • 不能包含空格、标点符号或特殊字符。仅允许使用字母数字字符、下划线 (_)、破折号 (-) 和正斜杠 (/) 字符。
  • 不应以下划线 (_) 开头。
  • 最大长度为 64 个字符。

InfluxQL DBRP 命名约定

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

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

database_name/retention_policy_name

数据库命名示例

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

表和列限制

在 InfluxDB Clustered 中,可以使用 --max-tables--max-columns 标志配置表(测量)和列限制。

表限制

默认最大表数: 500

每个测量都由数据库中的一个表表示。您的数据库的表限制可以提高到超出 500 的默认限制。InfluxData 拥有跨多个数据库的 20,000 多个活动表的生产示例集群。

增加表限制会以以下方式影响您的 InfluxDB 集群

可能提高查询性能 查看更多信息

更多 PUT 请求到对象存储 查看更多信息

压缩器需要做更多工作 查看更多信息

列限制

默认最大列数: 250

时间、字段和标签都由表中的一列表示。增加列限制会以以下方式影响您的 InfluxDB 集群

可能对查询性能产生不利影响


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

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

阅读更多

InfluxDB 3 开源版本现已发布公开 Alpha 版

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

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

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

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