前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Windows版InfluxDB及相关软件安装与配置

Windows版InfluxDB及相关软件安装与配置

作者头像
周小董
发布2019-05-08 11:03:43
7.3K2
发布2019-05-08 11:03:43
举报
文章被收录于专栏:python前行者

公司在做一个工业监控系统,虽然数据采集点并不算多但是数据量积累下来也非常大,使用mysql数据库进行数据存储和查询时很慢,所以让我调研一下时序数据库,通过调研和了解时序数据库在海量数据的读取和写出都比关系型数据库和NoSql快很多,有人做过mysql和influxDB对比,存储1000万条数据mysql要7分多钟,influxDB只需2分多钟,从1000万条数据读10000条所需数据mysql要6秒多,influxDB只需0.22秒多


这一个系列是针对SRCC公司的海量传感器数据的存储及处理探索。

因为得到的传感器数据几乎都是时序数据,即一个时间戳为主,其它为value的键值对形式,常见的MySQL等关系型数据库不适用。

在时序数据库方面,InfluxDB应该是比较成熟的一款了,所以在此尝试用InfluxDB来解决这一(伪)需求,至于能完善到哪种程度,就走着看吧…

InfluxDB其实包括了时序数据的上下游:

Telegraf(收集数据) —> InfluxDB(存储数据) —> Chronograf(显示数据) —>Kapacitor(处理数据)

此文先是安装了InfluxDB和Chronograf,因为我是安装完了InfluxDB才发现这是一个上下游产业的。。。

1.1 下载

在 官方下载:https://portal.influxdata.com/downloads/ 选Windows版,可能需要访问外国网站。

下载后是一个压缩包,直接解压到你想安装的目录下就行了,按照惯例,路径最好别有中文,虽然我不知道有没有关系,但没有中文肯定是没问题的。

这个和大部分的Linux软件一样,解压完就是可以直接打开使用,不需要安装过程,解压完目录如下,但是还需要配置一下influxdb.conf文件才行:

1.2 配置

修改influxdb.conf文件,主要是三处地址,其它我没改动

看它的注释也大概可以看出来,这几个目录的含义了,自己新建三个文件夹好了。配置完成,保存修改。

InfluxDB 的数据存储主要有三个目录。默认情况下是 meta, wal 以及 data 三个目录,服务器运行后会自动生成。

meta 用于存储数据库的一些元数据,meta 目录下有一个 meta.db 文件。

wal 目录存放预写日志文件,以 .wal 结尾。

data 目录存放实际存储的数据文件,以 .tsm 结尾。

1.3 启动测试

此时,双击influxd.exe就好了,这是数据库连接,运行后,会出现一个命令行界面,而且是一直在运行,这是对的,因为一旦这个进程停止了,就可能是数据库连接断了,就无法操作数据库了。

在上面运行的基础上,再双击influx.exe,就会出现下面这样的数据库界面了,有一点点MySQL基础的同学应该对这个界面都不陌生吧。

在这也是一样,也可以尝试一些语句

代码语言:javascript
复制
show databases
create database mydb
use mydb
show measurements   # measurements相当于的SQL中的tables
show series #看表

新建表和插入数据

新建表没有具体的语法,只是增加第一条数据时,会自动建立表

代码语言:javascript
复制
insert results,hostname=index1 value=1

代码语言:javascript
复制
> insert results,hostname=index1 value=1
> select * from results
name: results
time                hostname value
----                -------- -----
1555576798455199200 index1   1
>

results代表表名,hostname是索引,value是具体的字段,默认会有time字段,也可以自己设定输入的时间

这里的时间看不懂,可以设置一下时间显示格式

代码语言:javascript
复制
precision rfc3339

代码语言:javascript
复制
> precision rfc3339
> select * from results
name: results
time                         hostname value
----                         -------- -----
2019-04-18T08:39:58.4551992Z index1   1
>

查询数据

表名有点号时,输入双引号

和sql语法相同,区别:

measurement 数据库中的表

points 表里面的一行数据,Point由时间戳(time)、数据(field)、标签(tags)组成。

用户管理

  • 显示所有用户:
代码语言:javascript
复制
show users

代码语言:javascript
复制
> show users
user admin
---- -----
>

  • 新增用户:
代码语言:javascript
复制
--普通用户
create user "user" with password 'user'
--管理员用户
create user "admin" with password 'admin' with all privileges

  • 删除用户
代码语言:javascript
复制
drop user "user"

代码语言:javascript
复制
> show users
user admin
---- -----
> create user "user" with password 'user'
> create user "admin" with password 'admin' with all privileges
> show users
user  admin
----  -----
user  false
admin true
> drop user "user"
> show users
user  admin
----  -----
admin true
>

可以参见 InfluxDB官方新手引导:https://docs.influxdata.com/influxdb/v1.7/introduction/getting-started/

1.4 Telegraf 安装配置

和上面一样,只要下载安装就行了。

在启动前,先设置一下日志文件目录,打开telegraf.conf文件,将此目录修改为自己的目录路径就行了(这个路径是自己新建的,原本不存在),其他的不要动:

启动测试也是一样,双击telegraf.exe就启动了。

只配置这一个文件的时候,我启动后,命令行窗口打开一会儿就自动关闭了,于是我还是去看了一下官方的指导:Getting started with Telegraf

原来在真正使用Telegraf 时,是要设置 input 和 output 地址的,于是照着官方的指导:先创建一个配置文件,(为防止覆盖原始配置文件,我命名为telegraf_2.conf),指定的输入为 cpu 和 内存(mem)状态,指定输出为 influxDB。

代码语言:javascript
复制
telegraf -sample-config -input-filter cpu:mem -output-filter influxdb > telegraf_2.conf

然后再次启动,当然,在这之前要先启动influxdb:

代码语言:javascript
复制
telegraf --config telegraf_2.conf

这里要是成功的话,应该会在influxdb中看到telegraf的东西,去看看:

ok,telegraf成功。

1.5 Chronograf 安装

要使用web管理需要下载Chronograf,下载完直接解压,双击exe程序,在浏览器输入http://localhost:8888/,一开始登录要账户密码,我都用admin就进去了。

在这一步,我选择Add Connection后,出来的是一个Dashboards界面,要你选择你想创建的面板,随便选了几个自己认识的。。直接下一步,到了如下界面:

依然是凭着感觉填了,然后continue,然后。。。后面好像就结束了。

就这么稀里糊涂的选择完了Chronograf,然后再在浏览器重新输入http:\\localhost:8888,即可进入Chronograf界面。

参考:https://blog.csdn.net/qq_41059320/article/details/84231476 https://blog.csdn.net/xiaocxyczh/article/details/78682211 https://blog.csdn.net/SwTesting/article/details/82700023 https://blog.csdn.net/u012831077/article/details/82526038

https://blog.csdn.net/zuozewei/article/details/82929429

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年04月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • InfluxDB其实包括了时序数据的上下游:
  • 1.1 下载
  • 1.2 配置
  • 1.3 启动测试
    • 新建表和插入数据
      • 查询数据
        • 用户管理
        • 1.4 Telegraf 安装配置
        • 1.5 Chronograf 安装
        相关产品与服务
        云数据库 SQL Server
        腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档