管理数据库
InfluxDB 数据库是一个存储时间序列数据的命名位置。
每个 InfluxDB 数据库都有一个 保留期。
如果来自 InfluxDB v1,数据库和保留策略的概念被合并为一个单一概念——数据库。保留策略不再是 InfluxDB 数据模型的一部分。 但是,InfluxDB 集群确实支持 InfluxQL,这需要数据库和保留策略。请参见 InfluxQL DBRP 命名约定。
如果来自 InfluxDB v2、InfluxDB Cloud (TSM) 或 InfluxDB Cloud Serverless, 数据库 和 桶 是同义词。
保留期限
数据库保留时间是存储在数据库中的数据的最大年龄。 数据的年龄由与每个点相关联的时间戳确定。 当一个点的时间戳超出保留时间(相对于现在)时,该 点被标记为删除,并在下次运行保留执行服务时从数据库中移除。
InfluxDB 数据库的 最小 保留期为 1 小时。
最大 保留期为无限,意味着数据不会过期,并且将永远不会被保留执行服务删除。
表和列的限制
您可以自定义 表(测量)限制 和 表列限制 当您 创建 或 更新数据库 在 InfluxDB 集群中。
表限制
默认最大表数量: 500
每个测量在数据库中由一个表表示。 您数据库的表限制可以提高到超过默认限制500。 InfluxData 有 20,000 个以上活跃表的集群生产示例,跨多个数据库。
增加您的表限制会影响您的 InfluxDB 集群,具体如下:
列限制
默认最大列数: 250
可配置的最大列数: 1000
每行必须包含一个时间列,其余列代表标签和字段。因此,一个有250列的表可以有一个时间列和最多249个字段和标签列。
如果您尝试写入一个表并超过列限制,写入请求将失败,并且 InfluxDB 会返回一个错误。
如果您更新数据库的列限制,该限制适用于新创建的表;不会覆盖现有表的列限制。
增加列限制会在以下方面影响您的 InfluxDB 集群:
创建一个数据库
使用influxctl database create命令在您的InfluxDB集群中创建一个新的InfluxDB数据库。提供数据库名称和可选的保留期限。
命令行界面
influxctl database create \
--retention-period 30d \
--max-tables 500 \
--max-columns 250 \
DATABASE_NAME
更新数据库
使用influxctl database update命令来更新您InfulxDB集群中的数据库。
influxctl database update \
--retention-period 30d \
--max-tables 500 \
--max-columns 250 \
DATABASE_NAME
列出数据库
使用influxctl database list命令列出您的InfluxDB集群中的数据库。
influxctl database list
删除数据库
使用influxctl database delete 命令从您的 InfluxDB 集群中删除一个数据库。提供您想要删除的数据库的名称。
influxctl database delete <DATABASE_NAME>