InfluxDB下载安装教程


回到目录

一、简介

  InfluxDB是一个由InfluxData开发的开源时序型数据库。它使用Go语言编写,专注于高性能地查询与存储时序型数据。时序数据是指与时间相关的数据,如系统监控、IoT设备读数等。InfluxDB是一个功能强大且灵活的时序数据库,适用于需要处理和分析时间序列数据的各种应用场景,如存储系统的监控数据、物联网行业的实时数据等。
  InfluxDB具有三大核心特性:

  • 时间序列:允许用户通过时间相关函数(如最大、最小、求和等)来查询和操作数据。
    度量:可以实时对大量数据进行计算,这使得InfluxDB在需要快速响应和实时分析的场景中特别有用。
  • 事件:它支持任意的事件数据,提供了更广泛的适用性。
  • 此外,InfluxDB还提供了自定义的高性能数据存储,专为时间序列数据设计。这使得它能够在毫秒级别记录数据,如电脑内存使用情况等,并通过图形化界面(如配合Grafana)创建数据图表和统计。

InfluxDB和TDengine的差异分析
  InfluxDB和TDengine都是时序数据库,但它们在多个方面存在显著差异。以下是对这两个数据库的详细对比:

  • 性能:TDengine在性能上表现优异。其写入性能相比InfluxDB快约5倍,读取性能约为35倍,聚合函数性能约为140倍,按标签分组查询性能约为250倍,按时间分组查询性能约为12倍。这意味着在处理大量时序数据时,TDengine能够更快速地完成数据的写入、读取和查询操作。
  • 数据模型:InfluxDB使用的是标签-值数据模型,每个数据点都有一个标签和一个值。而TDengine则采用传统的关系型数据模型,数据点表现为一个行,每个行有多个列。这种差异影响了数据的存储和查询方式。
  • 数据存储与备份:InfluxDB使用TSI(Time-Structured Merge Tree)存储引擎,而TDengine则使用TAOS引擎。此外,InfluxDB需要依赖外部工具来实现数据的备份和恢复,而TDengine在数据可靠性方面表现更好,可能具有更强大的内置数据备份和恢复功能。
  • 社区支持:InfluxDB拥有更大的社区支持,有更多的插件和工具可以与之集成。这意味着在使用InfluxDB时,用户可能更容易找到相关的教程、解决方案和社区帮助。然而,TDengine的社区虽然相对较小,但也在不断发展壮大。
  • 数据查询:TDengine为了让MySQL用户友好使用,直接采用以SQL为接口语言的设计策略。此外,TDengine提出了超级表(SuperTable)的概念,用于提高查询效率。尽管每个数据采集点使用一个表的设计在某些场景下可以优化写入性能,但在多表查询时可能会增加复杂度。
  • 磁盘空间占用:在大数据规模的场景中,InfluxDB落盘后文件占用的磁盘空间是TDengine的4倍以上。这表明TDengine在磁盘空间利用上更为高效。
      综上所述,InfluxDB和TDengine各有其优势和特点。InfluxDB在数据模型和社区支持方面表现较好,而TDengine则在性能、数据可靠性和磁盘空间利用方面表现更优。在选择使用哪个数据库时,需要根据具体的应用场景和需求进行权衡。

  为了使用InfluxDB,用户可以选择多种方式安装和部署它,包括通过Docker容器进行部署或者在线部署、离线安装包部署等方式。安装完成后,用户可以执行常用操作,如创建数据库、创建用户并授权、导入和导出数据等。

回到目录

二、【linux】InfluxDB下载安装配置

  • linux下的安装方式如下: 根据实际环境需要选择一种方式安装就行
  1. 通过包管理工具安装,比如apt 和yum
  2. 直接下载可执行二进制程序的压缩包
  3. 通过docker安装
  • windows 下的安装方式
    直接下载安装包解压后,在 cmd 命令框内运行即可

回到目录

2.1 下载安装

  首先访问 InfluxDB 官网点击访问),找到选择合适的版本
1

2.1.1 apt在线安装

  如果服务器支持访问外部网络,建议使用该种方式。

  1. 如果服务器是 CentOS,执行如下命令下载 rpm 文件:
wget https://dl.influxdata.com/influxdb/releases/influxdb-1.8.2.x86_64.rpm

其中:influxdb-1.8.2.x86_64.rpm根据不同版本rpm文件名称不同

  1. 下载后执行如下命令进行安装:
sudo yum localinstall influxdb-1.8.2.x86_64.rpm

如果已经通过apt在线安装了,可以跳过[2.1.2 离线安装],点击进入‘’配置及启动

回到目录

2.1.2 离线安装

  如果服务器不支持访问外部网络,建议使用该种方式。

  1. 如果服务器是 CentOS,先去官网下载 rpm 文件,下载地址:https://repos.influxdata.com/rhel/7/x86_64/stable
    点击选择合适的版本下载
    1
  2. 将安装包传到指定文件夹下,然后执行安装命令:
yum localinstall -y influxdb-1.8.3.x86_64.rpm

其中:influxdb-1.8.2.x86_64.rpm根据不同版本rpm文件名称不同
1

2.2 配置及启动

  1. 修改配置文件,执行命令:vi /etc/influxdb/influxdb.conf
    以下标出需要修改的部分:
# 以下三个文件夹可根据需要进行修改目录
[meta]
  dir = "/var/lib/influxdb/meta"
[data]
  dir = "/var/lib/influxdb/data"
  wal-dir = "/var/lib/influxdb/wal"
# http相关参数
[http]
  # 开启 HTTP API
  enabled = true 
   # 默认绑定端口为 8086可进行修改
  bind-address = ":8086"
  # 用户及密码验证默认关闭【注意】创建管理员用户后生产环境进行开启
  # auth-enabled = false

修改后,保存文件。
2. 启动服务,执行命令:systemctl start influxd
 查看启动状态,执行命令:systemctl status influxd
1

此时状态为‘active’说明启动成功

  1. 创建管理员用户:
  • 进入命令行工具界面,执行命令:
# 如果使用默认端口8086
influx 
# 如果修改了默认绑定的端口,添加-port参数指定端口
influx -port '18088'

1

  • 创建管理员用户,执行命令:
create user "usename" with password 'userpass' with all privileges;
# 例如:创建用户root ,登录密码为 root
create user "root" with password 'root' with all privileges;
# 查看创建的用户,使用如下命令
show users

2

  1. 开启用户密码认证:
  • 修改配置文件,执行命令:vi /etc/influxdb/influxdb.conf
    以下标出需要修改的部分:
# http相关参数
[http]
  # 用户及密码验证默认关闭【注意】创建管理员用户后生产环境进行开启
 auth-enabled = true

修改后,保存文件。

  • 重启服务,执行命令:systemctl restart influxd
  • 使用用户名及密码进行登录,执行命令:
influx -username 用户名 -password 密码
# 例如,使用root用户登录
influx -username root -password root

2

其他常用配置,根据实际需要进行配置:

[data]
  # 是否应在执行查询之前记录查询日志。这对于故障排查非常有用,但会记录查询中包含的任何敏感数据。
  query-log-enabled = false
[http]
  #确定是否启用Flux查询日志记录
  flux-log-enabled = false
  # 确定是否启用HTTP请求日志记录。
 log-enabled = false
  # 当启用日志时,确定是否应禁止HTTP写入请求日志。
 suppress-write-log = false
 # 当启用HTTP请求日志记录时,此选项指定应将日志条目写入的路径。如果未指定,则默认写入stderr
 access-log-path = ""
 # 是否开启写操作日志,如果打开,每次写操作都会记录日志
 write-tracing = false
 [logging]
  # 日志格式,默认auto,其他可选格式:logfmt json
  format = "auto"
  # 日志级别,默认info,其他可选级别:error\warn\debug
  level = "error"
  # 当程序启动时,是禁用打印logo信息,默认false
  suppress-logo = false
  1. 开机自启配置
  • 执行命令:systemctl enable influxd

enable 不能用 提示层级太深
1

  • 修改/etc/rc.loal文件实现开启启动,执行命令:vi /etc/rc.loal
    在文件中新增行:
# 添加启动命令
systemctl start influxd

回到目录

3、windows 下的安装方式

参考链接:【Windows环境下部署InfluxDB】

回到目录

4、InfluxDB基本使用

4.1 创建用户

create user "usename" with password 'userpass' with all privileges;
# 例如:创建用户root ,登录密码为 root
create user "root" with password 'root' with all privileges;
# 查看创建的用户,使用如下命令
show users

4.2 数据库

  • 数据库创建
create database name;
# 例如:创建数据库hf_data 
create database hf_data;
# 查看创建的数据库,使用如下命令
show databases;
  • 为数据库创建保留策略
CREATE RETENTION POLICY <name> ON <dbname> DURATION <num>d REPLICATION 1 DEFAULT 
#例如:为数据库hf_data创建一个名称为“one_year_policy”的保留策略,设置为数据保留一年(365天):
  CREATE RETENTION POLICY "one_year_policy" ON "hf_data" DURATION 365d REPLICATION 1 DEFAULT 
# 查看当前数据库(默认为_internal)的保留策略
 SHOW RETENTION POLICIES ON <database_name> 
 #例如:查看数据库hf_data的保留策略
  SHOW RETENTION POLICIES ON hf_data;

这里:
“one_year_policy” 是保留策略的名称。
“hf_data” 是数据库名称。
DURATION 365d 设置数据保留的天数。
REPLICATION 1 设置副本数(根据你的集群设置调整)。
DEFAULT 表示这个保留策略是数据库的默认保留策略。新创建的measurement(类似于传统数据库中的表)将使用这个保留策略,除非明确指定其他保留策略。

1

回到目录

<think>嗯,用户需要InfluxDB 2的安装和使用教程。首先,我得确认用户的需求是什么。InfluxDB是一个时序数据库,常用于监控、分析时间序列数据。用户提到的是版本2,所以需要注意InfluxDB 2和1.x版本在安装和配置上的区别。根据用户提供的引用内容,引用[1]是关于InfluxDB 1.7的安装,引用[2]和[3]则提到了InfluxDB2的CLI安装和图形界面工具。用户可能已经看过这些引用,但需要更明确的步骤。 首先,我应该整理InfluxDB 2的安装步骤。根据引用[2],安装CLI部分提到了下载tar包、解压和复制到bin目录,但用户可能还需要InfluxDB 2本身的安装方法。不过引用中没有直接给出InfluxDB 2的服务端安装步骤,可能需要结合其他资源。或者,可能用户提供的引用中,引用[2]是关于CLI客户端的安装,而InfluxDB 2的安装可能需要其他方式,比如直接从官网下载包或者使用仓库。 在Linux系统下,常见的安装方法是通过下载二进制包或者使用包管理器。例如,对于CentOS,可能需要下载rpm包进行安装。但用户提供的引用里,引用[1]是InfluxDB 1.7的rpm安装,而引用[2]是关于InfluxDB 2客户端的安装。所以可能需要查找InfluxDB 2的官方文档,确认正确的安装步骤。例如,InfluxDB 2的官方安装指南可能推荐使用二进制文件或者Docker镜像。 另外,用户提到的InfluxDB Studio是一个图形化管理工具,项目地址在引用[3]中,可能需要指导用户如何安装和使用这个工具来管理InfluxDB 2实例。 接下来,使用教程部分需要涵盖初始化设置、创建存储桶、写入数据、查询等基本操作。可能还需要介绍如何使用CLI工具(如influx命令)以及如何通过API进行操作。用户可能还需要知道如何配置认证,设置组织和权限等。 需要注意的是,InfluxDB 2相比1.x版本有较大的架构变化,引入了新的概念如组织(Organization)、存储桶(Bucket)等,所以在教程中需要解释这些概念。此外,Telegraf和Chronograf在InfluxDB 2中可能被整合到新的UI中,用户可能需要了解如何配置数据收集和可视化。 可能的问题点:用户提供的引用中是否有足够的InfluxDB 2服务端的安装步骤?引用[2]主要是CLI的安装,而服务端的安装可能需要其他步骤。比如,在InfluxDB的官方网站上,可能提供了不同操作系统的安装包,或者使用Docker的方式。需要补充这部分的内容。 另外,用户可能是在生产环境中安装,需要注意数据目录的权限设置,如引用[1]中提到的创建数据存储目录并设置权限。在InfluxDB 2中,数据存储路径可能有所不同,需要确认正确的配置方式。 总结步骤:安装InfluxDB 2服务端,安装CLI工具,进行初始化配置,创建组织和存储桶,写入数据,查询数据,使用图形界面工具InfluxDB Studio进行管理。同时,需要确保所有步骤符合用户的操作系统环境,比如CentOS。 可能还需要包括启动服务、设置开机自启、防火墙配置等细节。例如,安装完成后,使用systemctl启动服务,并开放8086端口。 现在需要根据这些思考整理出一个清晰的安装和使用指南,确保涵盖用户所需的所有关键步骤,并引用提供的参考资料中的相关内容,比如CLI安装部分来自引用[2],图形工具来自引用[3],而数据目录权限参考引用[1]的部分操作。</think>### InfluxDB 2 安装与使用教程 #### **一、安装步骤** 1. **下载InfluxDB 2服务端** InfluxDB 2支持多种安装方式,此处以Linux系统(如CentOS 7)为例: ```bash # 下载二进制包(根据系统选择对应版本) wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.7.5-linux-amd64.tar.gz # 解压并安装 tar xvzf influxdb2-2.7.5-linux-amd64.tar.gz sudo cp influxdb2-2.7.5/usr/bin/* /usr/local/bin/ # 创建数据存储目录并授权 mkdir -p /data/influxdb2 chmod -R 777 /data/influxdb2 ``` 2. **安装InfluxDB CLI客户端**(引用[2]) ```bash wget https://download.influxdata.com/influxdb/releases/influxdb2-client-2.7.5-linux-amd64.tar.gz tar xvzf ./influxdb2-client-2.7.5-linux-amd64.tar.gz sudo cp ./influx /usr/local/bin/ ``` 3. **启动InfluxDB服务** ```bash # 启动服务(默认端口8086) influxd --engine-path=/data/influxdb2 # 设置开机自启(可选) ``` --- #### **二、初始化配置** 1. **访问Web UI** 浏览器打开 `http://<服务器IP>:8086`,首次访问需完成初始化: - 创建管理员账号(用户名、密码) - 设置组织名称(Organization)和存储桶(Bucket) 2. **通过CLI配置** ```bash influx setup # 按提示输入URL、Token、组织、存储桶等信息 ``` --- #### **三、基本操作** 1. **写入数据** 使用行协议(Line Protocol)写入时序数据: ```bash influx write --bucket <存储桶名称> "measurement,tag=value field=value <时间戳>" ``` 2. **查询数据** ```bash influx query --org <组织名称> 'from(bucket:"<存储桶名称>") |> range(start:-1h)' ``` 3. **使用图形化工具**(引用[3]) 下载并启动 [InfluxDB Studio](https://gitcode.com/gh_mirrors/in/InfluxDBStudio),配置连接信息(IP、端口、Token)即可管理数据库。 --- #### **四、优化与配置** - **数据保留策略**:在Web UI或CLI中设置存储桶的数据保留时间。 - **安全加固**:通过Token管理访问权限,限制用户角色[^2]。 - **集成Telegraf**:安装Telegraf代理,自动化采集监控数据。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值