InfluxDB Logo

InfluxDB 安裝筆記

2022-01-16

很多監視系統都採用了 TSDB(Time Series Database)資料庫來儲存海量資料,InfluxDB 也是熱門的 TSDB 之一,紀錄一下安裝方式…

簡介

“InfluxDB 目的在處理時間序列數據,SQL數據庫可以處理時間序列,但並非嚴格為此目的而創建的。簡而言之,InfluxDB可以存儲大量時間序列數據,并快速對這些數據執行實時分析。”

出自:Why InfluxDB isn’t CRUD

安裝

這裡我需要下載:

  • InfluxDB:InfluxDB 相關應用程式
  • Chronograf:InfluxDB 的視覺化管理工具

下載連結是一個壓縮檔,解壓縮後就可以直接使用:

InfluxDB 檔案結構

  • influxdb.conf:組態設定。
  • influxd.exe:點兩下就可以輕鬆架設一個 Influxdb Server。
  • influx.exe:Client,用來管理 Influxdb Server。

influxdb.conf

[meta][data] 是資料庫會用到的儲存檔設定,路徑記要用 \\ 雙反斜線。[http] 則是連線設定,可以修改預設的 server port。

[meta] 
# Where the metadata/raft database is stored
dir = "C:\\influxdata\\meta"

[data]
# The directory where the TSM storage engine stores TSM files.
dir = "C:\\influxdata\\data"
# The directory where the TSM storage engine stores WAL files.
wal-dir = "C:\\influxdata\\wal"

[http]
# Determines whether HTTP endpoint is enabled.
enabled = true

# The bind address used by the HTTP service.
bind-address = ":8086"

啟動 InfluxDB Server

使用命令提示字元啟動 influxd.exe。 用命令提示字元切換到 influxdb 目錄。

啟動 InfluxDB Server 並套用組態設定:

influxd.exe --config influxdb.conf

使用 NSSM 把 influxd 變成 Windows Service

官方沒有提供變成 Windows Service 的方式,我用 NSSM 把 influxd.exe 變成 Windows Service 啟動。

下載位置:NSSM - Status

解壓縮,用管理員權限執行命令提示字元,切換到 nssm 目錄。

輸入 nssm install,跳出操作介面,依照畫面的提示填寫:

  • PathD:\Lab\Monitor Server\influxdb-1.7.10_windows_amd64\influxdb-1.7.10-1\influxd.exe
  • Startup DirectoryD:\Lab\Monitor Server\influxdb-1.7.10_windows_amd64\influxdb-1.7.10-1
  • Arguments-config "D:\Lab\Monitor Server\influxdb-1.7.10_windows_amd64\influxdb-1.7.10-1\influxdb.conf"
  • Service NameInfluxDB1.7.10

其他有關 Windows Service 的設定在別的頁籤,有需要的自己研究一下,最後按下 Install Service

服務安裝成功後,啟動服務:

sc start InfluxDB1.7.10

查詢服務狀態:

sc query InfluxDB1.7.10

連接 InfluxDB Server

influx.exe

influx.exe 是官方提供給我們管理 Server 的應用程式,首先用命令提示字元切換到 influxdb 目錄。

執行 influx.exe

influx.exe

這樣會使用預設的方式連接 Server http://localhost:8086

也可以根據需求連結到不同的 Server,要使用下面的範例記得把引號拿掉。

指定位置:

influx.exe -host 'localhost' -port '8086'

指定位置和資料庫:

influx.exe -host 'localhost' -port '8086' -database 'demo'

加密連線 SSL (使用非認證授權):

influx.exe -unsafeSsl -ssl

指定位置和授權:

influx.exe -host 'localhost' -port '8086' -ssl -unsafeSsl -username 'user' -password 'password'

更改顯示時間格式 (預設為 timestamp):

influx.exe -precision rfc3339

連結 Server 成功就會出現 > 符號,等待輸入命令。下面就列出我常用的基本命令。

查詢有哪些資料庫

> show databases

Schema Exploration - show databases

使用資料庫

> use telegraf

查詢量測內容

> show measurements

Schema Exploration - show measurements

新增資料庫

> CREATE DATABASE 'DB'

Database Management - Create Database

刪除資料庫

> DROP DATABASE 'DB'

Database Management - Drop Database

Chronograf

Chronograf 是官方提供的連接 Server 的視覺化管理工具。

解壓縮後,檔案結構如下。直接執行 chronograf.exe,管理工具就建立起來了。

接著用瀏覽器訪問 http://localhost:8888

定義連線字串

選擇 Dashboard