首页 > 数据库技术 > 详细

influxDB使用小结

时间:2019-03-26 17:03:35      阅读:195      评论:0      收藏:0      [点我收藏+]

在集群中安装influxdb

influxdb提供了官方镜像,因此在集群中安装influxdb十分方便,只需要指定镜像名为influxdb即可自动下载运行,只需要配置环境变量就可以进行初始化设置

以下是官方文档提供的可配置环境变量

INFLUXDB_DB

以这个环境变量作为名字自动初始化一个数据库

INFLUXDB_HTTP_AUTH_ENABLED

允许身份验证。必须设置此选项或必须在配置文件中设置auth-enabled = true才能使后续的任何身份验证相关选项生效。

INFLUXDB_ADMIN_USER

以这个环境变量作为名字自动初始化一个管理员用户

INFLUXDB_ADMIN_PASSWORD

以这个环境变量作为管理员用户的密码

INFLUXDB_USER

以这个环境变量作为名字自动初始化一个普通用户,如果初始化了数据库,则自动获得该数据库的读写权限

INFLUXDB_USER_PASSWORD

使用INFLUXDB_USER配置的用户的密码。如果未设置,则生成随机密码并打印到标准输出。

INFLUXDB_READ_USER

要在INFLUXDB_DB上使用读取权限创建的用户的名称。如果未设置INFLUXDB_DB,则此用户将没有授予权限。

INFLUXDB_READ_USER_PASSWORD

使用INFLUXDB_READ_USER配置的用户的密码。如果未设置,则生成随机密码并打印到标准输出。

INFLUXDB_WRITE_USER

要在INFLUXDB_DB上使用写权限创建的用户的名称。如果未设置INFLUXDB_DB,则此用户将没有授予权限。

INFLUXDB_WRITE_USER_PASSWORD

使用INFLUXDB_WRITE_USER配置的用户的密码。如果未设置,则生成随机密码并打印到标准输出。

使用HTTP API与数据库通信

influxDB自带HTTP接口,可以轻松编写代码读写数据库

首先观察官方文档中使用curl操作数据库的样例:

Create your first database

curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE DATABASE mydb"

Insert some data

curl -XPOST "http://localhost:8086/write?db=mydb" -d 'cpu,host=server01,region=uswest load=42 1434055562000000000'

curl -XPOST "http://localhost:8086/write?db=mydb" -d 'cpu,host=server02,region=uswest load=78 1434055562000000000'

curl -XPOST "http://localhost:8086/write?db=mydb" -d 'cpu,host=server03,region=useast load=15.4 1434055562000000000'

Query for the data

curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "db=mydb" --data-urlencode "q=SELECT * FROM cpu WHERE host='server01' AND time < now() - 1d"

Analyze the data

curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "db=mydb" --data-urlencode "q=SELECT mean(load) FROM cpu WHERE region='uswest'"

看起来有一些麻烦,但是influxDB官方同时给出了HTTP client代码库

使用GO Client

连接客户端

c, err := client_v2.NewHTTPClient(client_v2.HTTPConfig{
        Addr:     "http://192.168.102.238:8086",
        Username: "kubespy",
        Password: "kubespy",
    })
    if err != nil {
        log.Fatal(err)
    }
    defer c.Close()

influxDB使用小结

原文:https://www.cnblogs.com/bforever/p/10601229.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!