influxdb入门

本文介绍了InfluxDB的基本概念和用途,强调了其主要用于监控数据记录和图表展示,尤其适用于数据插入和查询操作。文章详细阐述了InfluxDB 1.x版本的安装、使用,包括保留策略的设定。同时,通过Springboot展示了如何结合InfluxDB进行应用开发,并提供了HTTP查询的使用说明。
摘要由CSDN通过智能技术生成

前言

对于传统关系型数据库,增删改查应该是必备且常用的功能,而influxdb常用的只有insert和select,没有提供update语法,虽然有delete可以删除数据(delete语法和mysql相似),但是需求不大。

influxdb 相对于对监控数据的记录,用于对数据图标的展示,influxdb 2.0 版本已经更新,但由于2.0 版本与1.+ 版本相差比较大。加上对java 等相对应配套还不完善,这里都是1.+版本。

安装使用

一、下载安装

# docker启动influxdb
docker run -d -p 8083:8083 -p 8086:8086 --name my_influxdb influxdb:1.7.9

# 进入docker 容器
docker exec -it my_influxdb /bin/bash

#进入指定目录,启动客户端
cd /usr/bin
./influx

二、使用前准备工作

#创建用户名密码
create user "root" with password 'newpwd' with all privileges;

#创建数据库
CREATE DATABASE mydb;

#更改当前数据库过期策略
ALTER RETENTION POLICY "autogen" ON mydb DURATION 14d REPLICATION 1 SHARD DURATION 1d DEFAULT ;

#查看当前用户
show users;
# 查看有哪些数据库
show databases;

# 进入数据库设置名称
use 数据库名称;

influxdb保留策略

  • retention_policy_name: 策略名。
  • duration: 数据保留时长。
  • REPLICATION: 复制因子,单机版设置为1即可。
  • SHARD DURATION:设置shardGroupDuration时长,表示每个shard group时间跨度时长。可不填,默认根据RP的duration计算。
  • default: true为设置该RP为默认RP
> show users
user admin
---- -----
> create user "root" with password 'newpwd' with all privileges;
> show users;
user admin
---- -----
root true
> show databases;
name: databases
name
----
_internal
> CREATE DATABASE mydb;
> show databases;
> name: databases
name
----
_internal
mydb
> SHOW RETENTION POLICIES ON mydb;
name    duration shardGroupDuration replicaN default
----    -------- ------------------ -------- -------
autogen 0s       168h0m0s           1        true

> use mydb;
Using database mydb
> ALTER RETENTION POLICY "autogen" ON mydb DURATION 14d REPLICATION 1 SHARD DURATION 1d DEFAULT ;
> SHOW RETENTION POLICIES ON mydb;
name    duration shardGroupDuration replicaN default
----    -------- ------------------ -------- -------
autogen 336h0m0s 24h0m0s            1        true

Springboot 结合influxDb

一、引入依赖

 <dependency>
            <groupId>org.influxdb</groupId>
            <artifactId>influxdb-java</artifactId>
            <version>2.14</version>
        </dependency>

二、设置配置文件

influx:
  url: http://xx:8086
  user: root
  password: newpwd
  database: mydb

三、代码配置

@Component
@Configuration
@Data
public class InfluxDBConfig implements InitializingBean {
   

    @Value("${influx.user}")
    private String userName;

    @Value("${influx.password}")
    private String password;

    @Value("${influx.url}")
    private String url;

    //数据库
    @Value("${influx.database}")
    private String database;

    //保留策略
    private String retentionPolicy;

    private InfluxDB influxDB;

    public InfluxDBConfig(){
   }

    public InfluxDBConfig(String userName, String password, String url, String database) {
   
        this.userName = userName;
        this.password = password;
        this.url = url;
        this.database = database;
        // autogen默认的数据保存策略
        this
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>