InfluxDB3时序数据库 Windows安装教程

引言

在时间序列数据库领域,InfluxDB凭借其高性能和易用性成为热门选择。本文将围绕InfluxDB安装包的获取方式展开,重点介绍Windows平台下的安装部署流程,包括官方下载渠道、PowerShell脚本使用、配置文件修改等关键步骤

官方下载渠道与版本选择

InfluxDB提供OSS(开源版)和Enterprise(企业版)两种版本,支持Windows、Linux和macOS三大平台。用户可通过InfluxData官网获取安装包:

  1. 版本选择
    • OSS版本:免费开源,适合大多数用户
    • Enterprise版本:需企业授权,提供集群支持等高级功能
  2. 安装选择
    • Windows用户需选择.zip压缩包或.exe安装程序

特点

InfluxDB 3 的一个关键特性是使用对象存储以 Apache Parquet 格式存储时间序列数据。您可以选择将这些文件存储在本地文件系统上,但我们建议使用对象存储以获得最佳的整体性能。InfluxDB 3 Core 原生支持 Amazon S3、Azure Blob Storage 和 Google Cloud Storage。您还可以使用许多提供 S3 兼容 API 的本地对象存储实现,例如 Minio

准备安装

本文介绍时序数据库Influxdb3 core(开源版本)的安装和简单使用以及调优参数的介绍。

预期:

安装时序数据库Influxdb3 core
创建数据库 mydb

1、在InfluxDB官网中获取InfluxDB 3 Core 压缩包,并解压到目录(E:\db\influxdb3-core-3.8.0-windows_amd64)下。

2、使用 influxdb3 serve 命令来启动服务器,并可以通过参数指定对象存储类型和数据目录。以下命令需在解压目录下运行:

.\influxdb3.exe serve --object-store file --node-id mywindowsnode --data-dir "D:\influxdb3\data"

参数解释:
– object-store file: 指定使用本地文件系统作为对象存储。这是默认选项,但明确指出总是个好习惯。
– node-id <你的节点ID>: 为你的InfluxDB节点指定一个ID(单机随意)。

3、创建管理员令牌 (Admin Token):
在你启动InfluxDB 3服务器之后,你就可以创建管理员令牌了。管理员令牌拥有对InfluxDB 3实例所有操作的最高权限。

打开一个新的命令提示符 (CMD) 或 PowerShell 窗口(不要关闭正在运行服务器的那个窗口),运行一下命令:

cd E:\db\influxdb3-core-3.8.0-windows_amd64

.\influxdb3.exe create token --admin --host http://localhost:8181

–admin:表示你正在创建一个管理员级别的令牌;

–host http://localhost:8181:指定了InfluxDB服务器正在监听的地址和端口。如果你的服务器运行在其他地址或端口,请相应修改。

重点:复制该令牌,保存在一个安全的地方,此令牌只显示一次。

4、创建数据库

在安装目录下(E:\db\influxdb3-core-3.8.0-windows_amd64)运行以下命令:
.\influxdb3.exe create database <数据库名称> –token <第3步生成的令牌>

.\influxdb3.exe create database mydb --token YOUR_AUTH_TOKEN

上述命令中的mydb为创建的新的数据库的名称(更具实际需要修改数据库名称);

数据库超过5个报错:

Create command failed: server responded with error [422 Unprocessable Entity]: {"error":"Adding a new database would exceed limit of 5 databases"}

成功创建数据库返回:

Database "mydb" created successfully

5、写入数据到数据库

.\influxdb3.exe write --database mydb --token YOUR_AUTH_TOKEN --precision s 'home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000
home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000
home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600
home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600
home,room=Living\ Room temp=21.8,hum=36.0,co=0i 1641031200
home,room=Kitchen temp=22.7,hum=36.1,co=0i 1641031200
home,room=Living\ Room temp=22.2,hum=36.0,co=0i 1641034800
home,room=Kitchen temp=22.4,hum=36.0,co=0i 1641034800
home,room=Living\ Room temp=22.2,hum=35.9,co=0i 1641038400
home,room=Kitchen temp=22.5,hum=36.0,co=0i 1641038400
home,room=Living\ Room temp=22.4,hum=36.0,co=0i 1641042000
home,room=Kitchen temp=22.8,hum=36.5,co=1i 1641042000
home,room=Living\ Room temp=22.3,hum=36.1,co=0i 1641045600
home,room=Kitchen temp=22.8,hum=36.3,co=1i 1641045600
home,room=Living\ Room temp=22.3,hum=36.1,co=1i 1641049200
home,room=Kitchen temp=22.7,hum=36.2,co=3i 1641049200
home,room=Living\ Room temp=22.4,hum=36.0,co=4i 1641052800
home,room=Kitchen temp=22.4,hum=36.0,co=7i 1641052800
home,room=Living\ Room temp=22.6,hum=35.9,co=5i 1641056400
home,room=Kitchen temp=22.7,hum=36.0,co=9i 1641056400
home,room=Living\ Room temp=22.8,hum=36.2,co=9i 1641060000
home,room=Kitchen temp=23.3,hum=36.9,co=18i 1641060000
home,room=Living\ Room temp=22.5,hum=36.3,co=14i 1641063600
home,room=Kitchen temp=23.1,hum=36.6,co=22i 1641063600
home,room=Living\ Room temp=22.2,hum=36.4,co=17i 1641067200
home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200'

成功过返回:

success

6、从数据库查询数据

.\influxdb3.exe query --database mydb "SELECT * FROM home ORDER BY time" --token apiv3__-IBBf3Ozo28aPdgWpfObb9zKRUsdXn6RW6qq_YD9XA8gOvWKAC2rEXbNjSmyKP3idhseBFWsW0zV3CiJ2yW6g

成功过返回:

+----+------+-------------+------+---------------------+
| co | hum  | room        | temp | time                |
+----+------+-------------+------+---------------------+
| 0  | 35.9 | Kitchen     | 21.0 | 2022-01-01T08:00:00 |
| 0  | 35.9 | Living Room | 21.1 | 2022-01-01T08:00:00 |
| 0  | 36.2 | Kitchen     | 23.0 | 2022-01-01T09:00:00 |
| 0  | 35.9 | Living Room | 21.4 | 2022-01-01T09:00:00 |
| 0  | 36.1 | Kitchen     | 22.7 | 2022-01-01T10:00:00 |
| 0  | 36.0 | Living Room | 21.8 | 2022-01-01T10:00:00 |
| 0  | 36.0 | Kitchen     | 22.4 | 2022-01-01T11:00:00 |
| 0  | 36.0 | Living Room | 22.2 | 2022-01-01T11:00:00 |
| 0  | 36.0 | Kitchen     | 22.5 | 2022-01-01T12:00:00 |
| 0  | 35.9 | Living Room | 22.2 | 2022-01-01T12:00:00 |
| 1  | 36.5 | Kitchen     | 22.8 | 2022-01-01T13:00:00 |
| 0  | 36.0 | Living Room | 22.4 | 2022-01-01T13:00:00 |
| 1  | 36.3 | Kitchen     | 22.8 | 2022-01-01T14:00:00 |
| 0  | 36.1 | Living Room | 22.3 | 2022-01-01T14:00:00 |
| 3  | 36.2 | Kitchen     | 22.7 | 2022-01-01T15:00:00 |
| 1  | 36.1 | Living Room | 22.3 | 2022-01-01T15:00:00 |
| 7  | 36.0 | Kitchen     | 22.4 | 2022-01-01T16:00:00 |
| 4  | 36.0 | Living Room | 22.4 | 2022-01-01T16:00:00 |
| 9  | 36.0 | Kitchen     | 22.7 | 2022-01-01T17:00:00 |
| 5  | 35.9 | Living Room | 22.6 | 2022-01-01T17:00:00 |
| 18 | 36.9 | Kitchen     | 23.3 | 2022-01-01T18:00:00 |
| 9  | 36.2 | Living Room | 22.8 | 2022-01-01T18:00:00 |
| 22 | 36.6 | Kitchen     | 23.1 | 2022-01-01T19:00:00 |
| 14 | 36.3 | Living Room | 22.5 | 2022-01-01T19:00:00 |
| 26 | 36.5 | Kitchen     | 22.7 | 2022-01-01T20:00:00 |
| 17 | 36.4 | Living Room | 22.2 | 2022-01-01T20:00:00 |
+----+------+-------------+------+---------------------+

7、删除数据库

.\influxdb3.exe delete database mydb --token YOUR_AUTH_TOKEN

提示

Are you sure you want to delete "mydb"? Enter 'yes' to confirm

输入

yes

回车
数据库删除成功返回:

Database "mydb" deleted successfully

结语:
将以上命令中的YOUR_AUTH_TOKEN替换为第3步中生成的Admin Token;

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code