「influxDB 原理与实践(一)」安装部署,实现基础的添加删除查询功能

我们使用稳定版本1.7.8。

简介

开源的时间序列数据库。什么是时间序列数据库,最简单的定义就是数据格式里包含Timestamp字段的数据,比如某一时间磁盘使用率、网络流量、CPU的使用率等。

InfluxDB是一个开源的时间序列数据库,一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及执行分析。

特性

1、内置HTTP API,所以不用再写服务端代码来启动和运行。
2、数据可以被标记,允许非常灵活的查询。
3、类似SQL的查询语言
4、安装和管理简单,数据输入和输出速度快
5、它旨在实时响应查询。这意味着point数据写入即被索引并立即可供响应时间应小于100ms的查询使用。

下载

安装


/usr/bin

  • influx:influxDB的命令行工具;
  • influxd:influxDB的服务器程序;
  • influx_inspect :influxDB的数据检查工具;
  • influx_stress:influxDB的压力测试工具;
  • influx_tsm : 数据库格式转换工具,将数据从b1或bz1格式转换为tsm1格式。

启动

进入/usr/bin目录下,启动命令
./influxd --config ../../etc/influxdb/influxdb.conf &

命令介绍

  • influx
    • ./influx -version 查看版本号
    • ./influx -host 'hostname' 指定要连接的主机名
    • ./influx -port '端口号' 指定要连接的端口号
    • ./influx -socket 'unxi domani socket' 以UNIX域或socket方式连接
    • ./influx -database 'database name' 指定要连接的数据库名
    • ./influx -password 'password' 指定用于认证的密码
    • ./influx -username 'username' 指定用于认证的用户名
    • ./influx -ssl 启用HTTPS连接
    • ./influx -unsafeSsl:当使用HTTPS连接到集群时,不适用SSL验证
    • ./influx -execute 'command' 执行命令
    • ./influx -type 'influxql|flux':指定调用REPL时使用的查询语言
    • ./influx -format 'json|csv|column':指定服务器响应内容的格式
    • ./influx -precision 'rfc3339|h|m|s|ms|u|ns' 指定时间戳格式,默认格式为rfc3339
    • ./influx -consistency 'any|one|quorum|all':指定写入一致性级别
    • ./influx -pretty :以阅读友好的方式显示JSON格式的内容
    • ./influx -import 从之前的备份文件中还原备份数据
    • ./influx -pps 设置数据导入时每秒允许允许导入多少条时许数据。默认为0,不限制导入速率。
    • ./influx -path 需要还原的备份文件的存储路径
    • ./influx -compressed 设置为true时,表示支持导入压缩格式的备份文件。
  • influxd
    • 服务器守护进程
    • ./influxd --config "配置文件" 通过配置文件启动
    • ./influxd bakcup "位置" 数据备份
    • ./influxd config 显示默认的配置信息
    • ./influxd help 显示帮助信息
    • ./influxd restore "文件" 还原之前通过backup命令备份的数据
    • ./influxd run 运行程序,默认参数,可忽略
    • ./influxd version 显示版本信息
  • influx_inspect
    数据检查工具,可查看TSM文件格式的内容
    • ./influx_inspect deletetsm 批量删除原始TSM文件
    • ./influx_inspect dumptsi 显示tsi文件的底层细节信息
    • ./influx_inspect dumptsm 显示tsm1文件的底层细节
    • ./influx_inspect buildtsi从tsm1数据中生成tsi1索引信息
    • ./influx_inspect help 显示帮助信息
    • ./influx_inspect export 导出数据
    • ./influx_inspect report显示分片级别的数据信息
    • ./influx_inspect verify 验证TSM文件的完整性
    • ./influx_inspect verify-seriesfile 验证时序文件的完整性。
  • influx_stress
    压力测试工具。现在不推荐是使用了,推荐使用influx-stress和influxdb-comparisons。
  • influx_tsm
    数据格式转换工具



配置文件

//是否上报InfluxDB的配置信息到官网,true不上报
reporting-disabled = true
//RPC服务对应的地址,用于备份数据通信等,默认监听8088
bind-address = "127.0.0.1:8088
//meta节点的配置信息
[meta]
dir="/root/.influxdb/meta" #meta数据和Raft数据库的存储目录
retention-autocreate=true #是否在创建数据库时创建默认保留策略autogen,默认为true
logging-enabled = true #是否打开META日志

//data节点配置



//coordinator节点配置



//retention节点配置



//分片预创建配置

//monitor配置



//subscriber配置信息


//http配置


//logging配置

//graphite配置




//collectD配置

//openTSDB配置



//UDP协议配置



//连续查询配置

//TLS配置


基础操作

influxDB支持通过InfluxDB API和influx命令来操作,InfluxDB API是一种基于HTTP协议的REST API,推荐生产环境使用。influx命令行是一种类似于MySQL命令行的工具,推荐日常数据库管理中使用。为了方便演示,我们使用influx命令执行基础写入、查询操作。

连接数据库

首先启动命令行,连接到本地服务器,在安装目录的usr/bin目录下执行
./influx命令

查看数据库

通过show databases命令查看数据库


新安装的InfluxDB没有数据记录,所以输出结果中只看到_internal

创建数据库

create database "数据库名字", 比如create database my

选定数据库

use 数据库名字

插入操作

通过insert命令向表my中插入一条有关cpu负载的时序数据记录。注意,逗号前后不能有空格。

insert cpu_usage,host=server01,region=ch value=2
//指定时间戳,不指定的话,系统将写入时间作为时间戳
insert cpu_usage,host=server01,region=ch value=2 1592906727717942736
//cpu_usage是表明,host、region是tag,value、name是值,最后是时间戳
insert cpu_usage,host=server01,region=ch  value=2,name=zhongguo 1592906727717942736

查看表名

show measurements,查看数据库my中当前所有的表信息,与mysql不通的是,influxDB不需要提前创建表,当写入时序数据时,influxDB会自动创建新表。


删除表

drop measurement cpu_usage

删除数据库

drop database my 删除数据库my

查询表信息

select * from cpu_usage


查询tag字段

show tag keys

显示field字段

show field keys

influxDB简单入门先介绍到这里,下一篇我们进一步学习。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,686评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,668评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,160评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,736评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,847评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,043评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,129评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,872评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,318评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,645评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,777评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,861评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,589评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,687评论 2 351