centos7.2 influxdb安裝與簡單使用

Amos_x發表於2017-11-09
influxdb是目前比較流行的時間序列資料庫。時間序列也就是裡面的每條資料都會有一個時間戳的欄位,方便基於時間的統計,查詢過濾等。內建很多常見的度量函式,還能類似Nosql一樣的無結構話,可以直接插入資料,新建表,隨時通過插入資料改變表結構等,非常方便好用,支援http api,可以通過http協議進行連線,操作。而且其語法也非常類似與常用的sql語句。
這裡,本人是將其與grafana一同使用,作為grafana的資料來源,進行監控圖示的繪製。
下面就記錄一下influxdb的安裝與簡單的操作。
一:安裝
$  wget https://dl.influxdata.com/influxdb/releases/influxdb-1.2.2.x86_64.rpm  (下載包) 
$ yum localinstall influxdb-1.2.2.x86_64.rpm  (用yum進行本地安裝)
$ vim /etc/influxdb/influxdb.conf (修改配置檔案)
------------------------------------------------------------------------------------------
reporting-disabled = true ( 這個要設定真,關閉定時上傳資料到influxdata.com)
#bind-address = ":8086"(這個需要自己手動新增,指定http的連線操作埠,預設為8086) 
[admin]
  # Determines whether the admin service is enabled.
  enabled = true (web管理介面,1.1版本以上預設關閉。需要的話,可以手動開啟)


  # The default bind address used by the admin service.
  bind-address = ":8083"    (web服務介面的埠)
---------------------------------------------------------------------------------------------------------------


二,啟動influxdb,並使用
## 本人並沒有開啟web介面,所以這裡講一下命令列的操作。就類似與常用資料庫。
$ systemctl start influxdb (啟動influxdb)
$ systemctl enable influxdb (設為開機啟動)
$ influx ( 進入influxdb )
Connected to http://localhost:8086 version 1.2.2
InfluxDB shell version: 1.2.2
-----------------------------------------------influxdb 的基本操作 -----------------------------
>create database test_db (建立資料庫test_db )
>show databases (列出所有資料庫)
>drop database test_db (刪除資料庫)
>use test_db ( 轉入test_db資料庫下 )
>create measurement test_table ( 建立test_table表,measurements==table(關係型資料庫中的) )
>show measurements  (列出所有表)
>drop measyrement test_table (刪除表test_able)


>insert test_table,host=web1 cpu=22,memory=33 (插入資料,test_table為表名,host為除了tag是,也就是方便用於度量的分類標籤,可以是字串。cpu和memory是數值,不能是字串,只能是數值,中間用空格隔開)格式如下:
insert table_name,tags=* values=values,values=values (分別為三段
>curl -i -X POST "http://127.0.0.1:8086/write?db=testDb【&u=username&p=password】" --data-binary "test_table,host=127.0.0.1 cpu=22,memory=33"
!!!!!!!!!!!!!!!!!!!!!利用http介面遠端插入資料,最常用的功能,用密碼時,通過u和P的引數進行認證,沒有則去掉。也就是利用post提交,預設的連線操作的埠為8086.


> select * from test_table (查詢語句,類似sql語句)
>select * from test_table where cpu = 22 ( where用法,類似sql)
>select * from test_table where host = 'web1' (同上)
>select * from test_table order by time [desc] (按時間排序,預設為順序,加上desc為倒序)


>show users (檢視使用者)
>create user "username" with password 'password' (建立普通使用者)
>create user "username" with password 'password' with all privileges (建立管理員使用者)
>drop user "username" (刪除使用者)
>auth (使用者認證,用於設定了密碼後,登陸influxdb的認證)
username: username
password: password


-----------------------------------------------------------------------------------------------------


好了,就說到這裡,更加複雜的用法, 有興趣的可以自行深入研究。目前本人只用到這麼多,如果以後用的多,再看情況另開部落格詳解。

相關文章