InfluxDB:Centos 7 安装 influxdb,简单java demo

it2025-11-14  2

Centos 7 安装 influxdb

一、Introduce(简介)二、Install(安装)三、Operation(操做)1、(show databases)查看数据库2、(create database)创建数据库3、(use databases)使用数据库4、(insert measurement)创建所谓的表 四、Web site(web界面)五、Through Java Operation(通过java操作)六、Reference Source(参考)

一、Introduce(简介)

InfluxDB是使用GO编写的一个开源的分布式时序数据库,无需外部依赖。 你肯定想知道什么是时序数据库? 时序数据库全称为时间序列数据库,时间序列数据库主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)数据,带时间标签的数据库也称为时间序列数据。在有时间的坐标中将这些数据连成线,往过去看可以看成维度报表,揭示其趋势性,规律性。

简单来说就是 一个与时间相关的数据库。 从DB-Engines Ranking of Time Series DBMS可以看出,现在排名第一的TSDB就是influxDB。

二、Install(安装)

centos 安装 influxdb,很简单的。 1、将InfluxDB加入yum源

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo [influxdb] name = InfluxDB Repository - RHEL \$releasever baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable enabled = 1 gpgcheck = 1 gpgkey = https://repos.influxdata.com/influxdb.key EOF

2、安装

#安装 sudo yum install -y influxdb

3、influxdb的状态,启动,关闭 在linux中,systemctl 管理大多数服务,可以执行以下命令

systemctl status influxdb // 查看influxdb的状态 systemctl start influxdb // 启动influxdb服务 systemctl stop influxdb // 停止influxdb服务

4、使用influx进入客户端

三、Operation(操做)

进入客户端之后,我们需要做简单的操作

1、(show databases)查看数据库

show databases; 这里我有一个叫做devops的数据库。

2、(create database)创建数据库

create database test 这里新建一个test数据库

3、(use databases)使用数据库

use test; 使用test数据库

4、(insert measurement)创建所谓的表

use test; insert disk_free,host=127.0.0.1,monitor_name=test count=1; select * from disk_free;

disk_free就是measurement的名称,后面相当与属性值

四、Web site(web界面)

我现在还没有办法访问web界面,还存在一些问题

五、Through Java Operation(通过java操作)

别直接运行,你是运行不了的。 我就给出用到的接口代码吧。

这是InfluxDBImpl类的其中一个构造方法。

/** * Constructs a new {@code InfluxDBImpl}. * * @param url * The InfluxDB server API URL * @param username * The InfluxDB user name * @param password * The InfluxDB user password * @param okHttpBuilder * The OkHttp Client Builder */ public InfluxDBImpl(final String url, final String username, final String password, final OkHttpClient.Builder client) { this(url, username, password, client, ResponseFormat.JSON); }

这是InfluxDBImpl类里面的查询接口。

/** * @param command the query command * @param database the database to query */ public Query(final String command, final String database) { this(command, database, false); }

这是写的测试类,使用了junit。

@Test public void test(){ OkHttpClient client=new OkHttpClient.Builder() .connectTimeout(60, TimeUnit.SECONDS) //设置连接超时 .readTimeout(60, TimeUnit.SECONDS) //设置读超时 .writeTimeout(60,TimeUnit.SECONDS) //设置写超时 .retryOnConnectionFailure(true) //是否自动重连 .build(); InfluxDBImpl influxDB = new InfluxDBImpl("http://192.168.44.237:8086", "root", "root", client.newBuilder()); Query query = new Query("select * from disk_free", "devops"); QueryResult result = influxDB.query(query); QueryResult.Result oneResult = result.getResults().get(0); System.out.println("_______________________________________________________"); if (oneResult.getSeries() != null){ System.out.println(oneResult.getSeries().toString()); } System.out.println("_______________________________________________________"); }

这是一些简单说明。

六、Reference Source(参考)

influxdb基本操作 CentOS 7下InfluxDB部署与使用入门 常用数据库排名及分类介绍

最新回复(0)