Centos7搭建influxdb+Chronograf
elasticsearch实验过后,今天尝试了另一种时序数据库influxdb
安装Influxdb
centos7 64位:1
2wget https://dl.influxdata.com/influxdb/releases/influxdb-1.6.1.x86_64.rpm
sudo yum localinstall influxdb-1.6.1.x86_64.rpm
(附卸载方式,曾经想卸载东西,找半天:
ipm包:
rpm -qa xxxx(查询安装包)
rpm -e xxxx(卸载)
yum install 安装的包:
yum remove xxx)
配置
安装完成后,相应配置文件位于:
/usr/bin1
2
3
4
5influxd influxdb服务器
influx influxdb命令行客户端
influx_inspect 查看工具
influx_stress 压力测试工具
influx_tsm 数据库转换工具(将数据库从b1或bz1格式转换为tsm1格式)
数据文件夹:/var/lib/influxdb1
2
3data 存放最终存储的数据,文件以.tsm结尾
meta 存放数据库元数据
wal 存放预写日志文件
以及,配置文件:1/etc/influxdb/influxdb.conf
启动1
2
3
4加自启动:
systemctl enable influxdb
启服务:
systemctl start influxdb
非服务方式启动:1
2
3
4[[email protected] influxdb]# influx
Connected to http://localhost:8086 version 1.6.1
InfluxDB shell version: 1.6.1
>
安装Chronograf
好像是1.4版本(具体不记得了),influxdb就去掉了自带的web页面(influxdb.conf中没有admin栏),想要从web页面查看数据,可以安装官方配套的展示工具Chronograf,用着感觉和grafana很像。
Cnetos 7下安装:1
2wget https://dl.influxdata.com/chronograf/releases/chronograf-1.6.1.x86_64.rpm
sudo yum localinstall chronograf-1.6.1.x86_64.rpm
启动:systemctl start chronograf
默认开启8888端口,浏览器访问http://IP:8888即可(若是在虚拟机安装,打不开,可以尝试用nginx转服务)
简单语法
influxdb与传统数据库的比较influxdbMySQLdatabase数据库
measurement数据库中的表
points表里面的一行数据
influxdb数据的构成:
Point由时间戳(time)、数据(field)、标签(tags)组成。Point属性传统数据库中的概念time每个数据记录时间,是数据库中的主索引(会自动生成)
fields各种记录值(没有索引的属性)也就是记录的值:温度, 湿度
tags各种有索引的属性:地区,海拔
简单操作
influx进入命令行模式:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20#创建数据库
create database "db_name"
#显示所有的数据库
show databases
#删除数据库
drop database "db_name"
#使用数据库
use db_name
#显示该数据库中所有的表
show measurements
#创建表,直接在插入数据的时候指定表名
insert test,host=127.0.0.1,monitor_name=test count=1
#删除表
drop measurement "measurement_name"
1
2
3INSERT cpu,host=serverA,region=us_west value=0.64 //在cpu表中插入相关的数据
SELECT * FROM cpu ORDER BY time DESC LIMIT 3 //查询最近的三条数据
delete from cpu where time=1480235366557373922 //删除某条数据
用户操作:1
2
3
4
5
6
7
8
9
10
11
12
13用户管理
可以通过Chronograf页面做操作,也可以命令行。
#显示用户
show users
#创建用户
create user "username" with password 'password'
#创建管理员权限用户
create user "username" with password 'password' with all privileges
#删除用户
drop user "username"
导入测试数据
CREATE DATABASE NOAA_water_database
下载官方数据集:1curl https://s3.amazonaws.com/noaa.water-database/NOAA_data.txt -o NOAA_data.txt
写数据1influx -import -path=./NOAA_data.txt -precision=s -database=NOAA_water_database
配置文件参考