Python操作Influxdb数据库
1、influxdb基本操作
[root@test ~]# wget https://dl.influxdata.com/influxdb/releases/influxdb-1.2.4.x86_64.rpm
[root@test ~]# yum localinstall influxdb-1.2.4.x86_64.rpm
[root@test ~]# wget https://dl.influxdata.com/influxdb/releases/influxdb-1.1.0.x86_64.rpm
[root@test ~]# yum localinstall influxdb-1.1.0.x86_64.rpm
[root@test ~]# influx -precision rfc3339 #更改influxdb的时间显示方式为utc显示方式
>precision rfc3339
insert disk_free,hostname=server01 value=4422i 1435362189575692182 #添加数据并自定义时间戳
注意:
插入一条带时间戳的数据时,时间必需在数据保留策略时间内,否则该条数据无法插入
InfluxDB的insert中,表名与数据之间用逗号(,)分隔,tag和field之间用 空格分隔,多个tag或者多个field之间用逗号(,)分隔
> show measurements #显示所有表
name: measurements
name
----
DomainBps
> show series from [表名] #series表示这个表里面的数据可以在图表上画成几条线
> drop measurement [表名] #删除一张表
> show retention policies on aliyun #查询aliyun数据库的默认策略
name duration shardGroupDuration replicaN default
---- ---------- ------------------ -------- -------
autogen 0s 168h0m0s 1 true
> alter retention POLICY "autogen" on "aliyun" duration 200h #更改数据的保留时间
name duration shardGroupDuration replicaN default
------- ---------- --------------------------- ---------- -------
autogen 200h0m0s 168h0m0s 1 true
> drop retention policy [策略名] on [数据库名] #删除策略
> create retention policy [策略名] on [数据库名] duration 48h/2d replication 1 default #创建策略
说明:
name字段为策略名
duration字段的0表示数据永远保留,不自动删除
shardGroupDuration字段的时间表示查询时间在168h内的查询效率高,查询大于这个时间的效率会降低
replicaN字段表示副本个数
2、python往influxbd插入数据
yum -y install epel-release #Centos6.8安装epel源
yum -y install python-pip
- [root@test ~]# pip install influxdb
- [root@test ~]# pip install --upgrade influxdb
- [root@test ~]# pip uninstall influxdb
- root@debian:~# apt-get install python-influxdb
- from influxdb import InfluxDBClient
- json_body = [
- {
- "measurement": "table_name", # 表名
- "tags": {
- "host": "server01", #host和region为字段名,server01和us-west分别为host和region的值
- "region": "us-west"
- },
- "time": "2009-11-10T23:00:00Z", # 插入的时间必需在数据保留时间范围内,如策略保留时间为7天,则传的时间不能为7天前
- "fields": {
- "value": 240.64345 #插入的值不能为0
- }
- },
- {
- "measurement": "table_name",
- "tags": {
- "host": "server01",
- "region": "us-west"
- },
- "time": "2018-04-22T011:05:00Z",
- "fields": {
- "value": 240
- }
- }
- ]
- client = InfluxDBClient('localhost', 8086, 'root', 'root', 'database')
- client.write_points(json_body)
参考链接:
https://www.cnblogs.com/shhnwangjian/p/6897216.html?utm_source=itdadao&utm_medium=referral
https://www.cnblogs.com/mafeng/p/6848166.html
https://github.com/influxdata/influxdb-python
https://github.com/mike-zhang/mikeBlogEssays/blob/master/2017
https://www.cnblogs.com/MikeZhang/p/InfluxDBPythonOpt20170312.html
https://www.cnblogs.com/saneri/p/7528283.html #psutil模块获取监控数据
Python操作Influxdb数据库的更多相关文章
- Python 使用Python远程连接并操作InfluxDB数据库
使用Python远程连接并操作InfluxDB数据库 by:授客 QQ:1033553122 实践环境 Python 3.4.0 CentOS 6 64位(内核版本2.6.32-642.el6.x86 ...
- 使用Python操作InfluxDB时序数据库
使用Python操作InfluxDB时序数据库 安装python包 influxdb,这里我安装的是5.3.0版本 pip install influxdb==5.3.0 使用 from infl ...
- 使用python操作InfluxDB
环境: CentOS6.5_x64InfluxDB版本:1.1.0Python版本 : 2.6 准备工作 启动服务器 执行如下命令: service influxdb start 示例如下: [roo ...
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- Python操作Access数据库
我们在这篇文章中公分了五个步骤详细分析了Python操作Access数据库的相关方法,希望可以给又需要的朋友们带来一些帮助. AD: Python编 程语言的出现,带给开发人员非常大的好处.我们可以利 ...
- Windows下安装MySQLdb, Python操作MySQL数据库的增删改查
这里的前提是windows上已经安装了MySQL数据库,且配置完成,能正常建表能操作. 在此基础上仅仅需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了.仅仅有1M ...
- 使用python操作mysql数据库
这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...
- python操作三大主流数据库(10)python操作mongodb数据库④mongodb新闻项目实战
python操作mongodb数据库④mongodb新闻项目实战 参考文档:http://flask-mongoengine.readthedocs.io/en/latest/ 目录: [root@n ...
- python操作三大主流数据库(9)python操作mongodb数据库③mongodb odm模型mongoengine的使用
python操作mongodb数据库③mongodb odm模型mongoengine的使用 文档:http://mongoengine-odm.readthedocs.io/guide/ 安装pip ...
随机推荐
- 【python54--爬虫2】
1.有道翻译 ''' |-- 代码思路解析: |-- 1.拿到网址首先查看network内Headers的:Request URL:User-Agent:From Data,这几个就是代码所需要的ur ...
- oracle单行函数 之 字符函数
Upper(字符串 / 列):将输入的字符串变成大写 Lower(字符串 / 列):将输入的字符串变成小写 Initcap(字符串 / 列):开头首字母大写 Length(字符串 / 列):字符串长度 ...
- 比赛总结——atcoder beginner contest 109
第一次AK的ABC 虽然题非常简单 但是值得纪念一下 T1 一道很水的题 不存在做法 纯粹乱跑 但是我把Yes打成YES了,哭唧唧 #include <cstdio> #include & ...
- LeetCode - 198 简单动态规划 打家劫舍
你是一个专业的小偷,计划偷窃沿街的房屋.每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警. 给定一个代表每 ...
- vs项目模板
创建项目模板 Creating a VSIX Deployable Project (or Item) Template with Custom Wizard Support Create a Pro ...
- Latex: IEEEtrans模板下 扩大标题宽度
参考: Extending side margins for Title section in IEEEtrans document class Latex: IEEEtrans模板下 扩大标题宽度 ...
- Ubuntu 安装 matplotlib
参考: ubuntu16 安装matplotlib Ubuntu 安装 matplotlib sudo apt-get install libpng-dev libfreetype6-dev pkg- ...
- ARM MOV PC加8
缘由 今天在分析ARM伪指令ADR,书上说ADR通常会被一条ADD或SUB指令替代实现相同功能.我反汇编了一下确实如此会基于PC相对偏移的地址量读取到寄存器中,可是计算却发现对不上 如上图所示,ADR ...
- 在 JSDOM v11 中使用jQuery
在JSDOM v11中使用jQuery 从v10开始,jsdom提供了更灵活的API. https://swashata.me/blog/use-jquery-jsdom-v11/ const tes ...
- python爬虫训练——爬poj题目
首先要解决的就是不同的题目在不同的页上,也就是要实现翻页功能,自动获取所要爬取的地址,通过分析可以得出不同的页面也就是volume=后面的数字不同 所以我们可以用re模块来替换即可: new_url ...