文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

influxDB 基础了解

2023-09-05 18:53

关注

目录

一、什么是时序数据库

1、时序数据库 InfluxDb

2、InfluxDB 的特点

3、influxdb 数据模型

4、influxdb 时间线

5、influxdb 系统架构

二、influxdb的安装

1.Windows电脑安装influxdb时序数据库

1、influxdb解压安装

2、启动influxdb数据库

3、启动客户端测试是否服务器启动成功

三、influxdb 基本操作

1、InfluxDB数据库操作

显示数据库

创建数据库

删除数据库

使用指定数据库

2、InfluxDB 数据表操作

显示所有表

新建表

查询表数据

删除表

3、数据保存策略(Retention Policies)

保留策略语法

创建数据保留策略

查看保留期

修改保留期

删除保留期

4、用户操作

显示用户

创建用户

修改用户密码

删除用户

5、数据库访问权限

用户授权

撤销授权

四、influxdb 开启用户登录认证

1、开启登录认证

2、开启认证后无密码登录

3、开启认证后有密码登录

一、什么是时序数据库

什么是时序数据库?时序数据库是近几年一个新的概念,与传统的Mysql关系型数据库相比,它的最大的特点是:数据按照时间顺序存储。

举例来说,日志数据,是以时间顺序存储的,所以用时序数据库存储是一种很好的选择。使用Mysql在存储的过程中,不是对这种基于时间的数据进行优化的,所以,在查询、插入上有一些瓶颈。

1、时序数据库 InfluxDb

InfluxDB是一个用于存储和分析时间序列数据的开源数据库。也是使用最多的一个时序数据库。

2、InfluxDB 的特点

InfluxDB有很多特点,如下:

3、influxdb 数据模型

Point由时间戳(time)、数据(field)和标签(tags)组成:

temperature 就是measurement 代表一张表。每行代表一个 point internal extenal 是两个数据指标取值。tags代表取值产生的位置。

4、influxdb 时间线

series 就是某种特定tag下的某个特定指标的时序取值集合。

 

5、influxdb 系统架构

每个database 可以有多个RP(retention policy数据保存策略),但是只有一个默认策略。策略下按照时间段分为多个ShardGroup,每个ShardGroup存储一个时间段的数据。每个shardgroup下分多个shard来存储数据。

 

二、influxdb的安装

1.Windows电脑安装influxdb时序数据库

windows1.8.3版本

1、influxdb解压安装

下载后直接解压即可,将influxdb解压到某个目录:

 有几个文件我们需要记一下:

2、启动influxdb数据库

通过cmd进入这个目录,执行 influxd.exe 即可启动:

 可能会弹出需要网络的提醒,这时候点击允许访问网络就可以了。

 3、创建服务

点击下方nssm.exe下载到influxdb目录中:

nssm.exe

 (1)通过cmd进入这个目录,执行 nssm.exe install influxdb,选择路径

 选择 influxd.exe

 (2)在Arguments填入 -config ./influxdb.conf

 (3)打开任务管理器,启动influxdb服务

 

3、启动客户端测试是否服务器启动成功

再次通过cmd进入这个目录,执行 influx.exe 即可启动:

 执行 show databases, 客户端会连接默认的db,如上图,显示了对应的数据库就表示influxdb启动成功了。

三、influxdb 基本操作

此次在Linux中进行操作演示

1、InfluxDB数据库操作

显示数据库

show databases

说明:_internal数据库是用来存储InfluxDB内部的实时监控数据的。

创建数据库

create database test

 

删除数据库

drop database kkkkk

 

使用指定数据库

use mydb

 

2、InfluxDB 数据表操作

在 InfluxDB 当中,并没有表(table)这个概念,取而代之的是 MEASUREMENTS,MEASUREMENTS 的功能与传统数据库中的表一致,因此我们也可以将 MEASUREMENTS 称为InfluxDB 中的表。

显示所有表

SHOW MEASUREMENTS

新建表

InfluxDB 中没有显式的新建表的语句,只能通过 insert 数据的方式来建立新表。

insert cpu,host=serverA,region=us_west value=0.64

其中 cpu 就是表名,host、region 是索引(tags),value=xx是记录值(fields),记录值可以有多个,系统自动追加时间戳

 

查询表数据

select * from cpu

 

执行 precision rfc3339 更换为国际时间,与北京时间相差8小时

删除表

drop measurement

 

3、数据保存策略(Retention Policies)

influxDB是没有提供直接删除数据记录的方法,但是提供数据保存策略,主要用于指定数据保留时间,超过指定时间,就删除这部分数据。(设置类似于定期清理的语句)

保留策略语法

CREATE RETENTION POLICY ON DURATION REPLICATION [SHARD DURATION ] [DEFAULT]

:保留策略的名称(自定义)

:为哪个数据库创建保留策略

:该保留策略对应的数据过期时间

REPLICATION:副本因子 SHARD DURATION:分片组的默认时长

[DEFAULT]:是否为默认策略

创建数据保留策略

CREATE RETENTION POLICY "influx_retention" ON "mydb" DURATION 30d REPLICATION 1 DEFAULT

influx_retention:策略名;

mydb:具体的数据库名;

30d:保存30天,30天之前的数据将被删除,influxdb具有各种事件参数,比如:h(小时),d(天),w(星期/周);

replication 1:副本个数,一般为1就可以了;

default:设置为默认策略

查看保留期

SHOW RETENTION POLICIES ON mydb

 

修改保留期

ALTER RETENTION POLICY "influx_retention" ON mydb DURATION 15d

 

删除保留期

DROP RETENTION POLICY "influx_retention" ON mydb

 

4、用户操作

显示用户

show users

 

创建用户

CREATE USER tom WITH PASSWORD '123'

 

create user "tony" with password '123' with all privileges

 

修改用户密码

SET PASSWORD FOR tom = '123456'

删除用户

drop user admin

5、数据库访问权限

用户授权

GRANT ALL PRIVILEGES ON influxdb TO tom

GRANT ALL PRIVILEGES TO tony

备注:只能使用admin权限才可以操作数据库

撤销授权

Revoke ALL PRIVILEGES ON influxdb FROM tom

Revoke ALL PRIVILEGES FROM tony

四、influxdb 开启用户登录认证

1、开启登录认证

在influxdb配置文件influxdb.conf中,开启用户登录认证,在http模块修改如下内容:

[root@client01 ~]# vim /etc/influxdb/influxdb.conf[http] ······ auth-enabled = true [root@client01 ~]# systemctl restart influxd # 修改完配置文件后需要重启 # 在Windows 中 则可以 在任务管理器中 重新启动influxdb服务

 

修改用户权限时需要重新修改配置文件为 auth-enabled = false 才可进行操作

2、开启认证后无密码登录

普通用户无权限查看:

 

3、开启认证后有密码登录

得让有管理员权限的用户登录才有查看权限:

执行 influx -username tony -password 123 登录 influxdb

来源地址:https://blog.csdn.net/weixin_46560589/article/details/126002393

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯