相關文章:
時序數據庫 InfluxDB(一)
時序數據庫 InfluxDB(二)
時序數據庫 InfluxDB(三)
時序數據庫 InfluxDB(四)
時序數據庫 InfluxDB(五)
時序數據庫 InfluxDB(六)數據庫
InfluxDB 自帶有一個監控系統,默認狀況下此功能是開啓的,每隔 10 秒中採集一次系統數據並把數據寫入到 _internal 數據庫中,其默認使用名稱爲 monitor 的 RP(數據保留 7 天),相關配置見配置文件中的:segmentfault
[monitor] store-enabled = true store-database = "_internal" store-interval = "10s"
_internal 數據庫與其它數據庫的使用方式徹底一致,其記錄的統計數據分爲多個 measurements :緩存
好比查詢最近一次統計的數據寫入狀況:服務器
select * from "write" order by time desc limit 1
_internal 數據庫裏的這些 measurements 中具體有哪些 field ,每一個 field 數據又表明了什麼含義,請參考官方文檔:
https://docs.influxdata.com/platform/monitoring/influxdata-platform/tools/measurements-internal/#influxdb-internal-measurements-and-fields網絡
InfluxDB 相關命令:數據結構
一、spa
SHOW STATS [ FOR '<component>' | 'indexes' ]
show stats 命令返回的系統數據與 _internal 數據庫中的數據結構是一致的,這裏的 component 其實就是對應 _internal 中的 measurement ,好比:debug
show stats for 'queryExecutor'
惟一例外的是:日誌
show stats for 'indexes'
其會返回全部索引使用的內存大小預估值,且沒有 _internal 中的 measurement 與之對應。code
二、
SHOW DIAGNOSTIC
返回系統的診斷信息,包括:版本信息、正常運行時間、主機名、服務器配置、內存使用狀況、Go 運行時等,這些數據不會存儲到 _internal 數據庫中。
InfluxDB 也支持經過 HTTP 接口獲取系統信息:
InfluxDB 支持本地或遠程的數據備份和恢復,其是經過 TCP 鏈接進行的,對於遠程方式,你必須修改配置文件中的:
bind-address = "127.0.0.1:8088"
將其設置爲本機在網絡上可通訊的對外地址,而後重啓服務,執行命令時須要經過 -host 參數對應這個地址。
備份命令:
恢復命令:
備份和恢復的命令參數很是類似,參數的含義也是一目瞭然的,好比你能夠備份指定的數據庫、RP、shard,恢復到新的數據庫、RP 。
因爲備份的格式進行過不兼容的更新,-portable 就是指定使用新的備份格式(強烈建議使用),-online 就是老的備份格式。
全部備份都是全量備份,不支持增量備份。你可能會問,不是有 -start 和 -end 能夠指定備份數據的時間範圍嗎?沒錯,是能夠的,可是備份是在數據塊上執行,並非逐點執行,而數據塊又是高度壓縮的,你使用 -start 和 -end 時,其還會備份到同一個數據塊中的其它數據點,也就是說:
另外,恢復數據時,沒法直接恢復到一個已經存在的數據庫或者 RP 中,爲此你只能先使用一個臨時的數據庫和 RP ,而後再從新將數據插入到已有的數據庫中(好比使用 select ... into 語句)。
我的公衆號持續輸出原創文章,有興趣的能夠關注下。