本章節以Linux系統為例,介紹從購買到內網連接GeminiDB Influx實例的操作步驟和基礎語法。
購買GeminiDB Influx實例
- 登錄管理控制臺。
- 在服務列表中選擇“數據庫 > 云數據庫 GeminiDB”。
- 在“實例管理”頁面,單擊“購買數據庫實例”,進入“服務選型”頁面。
- 在“購買數據庫實例”頁面,選擇計費模式,填寫并選擇實例相關信息后,單擊“立即購買”。
圖1 基本信息

圖2 選擇規格

圖3 設置密碼

- 查看購買成功的GeminiDB Influx實例。
圖4 購買成功

購買ECS
- 登錄管理控制臺。
- 在服務列表中選擇“計算 > 彈性云主機 ECS”,進入云服務器控制臺,單擊“購買彈性云主機”。
圖5 登錄彈性云主機控制臺

- 配置基礎信息后,單擊“下一步:網絡配置”。ECS與待連接的GeminiDB Influx實例的區域及可用區一致。ECS與待連接的GeminiDB Influx實例的區域、可用區、VPC和安全組一致。
圖6 基礎配置
圖7 選擇規格

圖8 選擇鏡像

- 配置網絡信息后,單擊“下一步:高級配置”。ECS與待連接的GeminiDB Influx實例的VPC和安全組一致。
- 如果安全組規則允許彈性云主機云主機訪問,即可連接實例。
- 如果安全組規則不允許彈性云主機云主機訪問,需要在實例安全組添加一條“入”的訪問規則。
圖9 網絡配置

圖10 選擇彈性公網IP

- 配置密碼等信息后,單擊“下一步:確認配置”。
圖11 高級配置

- 確認配置信息后,單擊“立即購買”。
圖12 確認配置

- 查看購買成功的ECS。
連接GeminiDB Influx實例
- 在ECS上,使用控制臺提供的VNC方式登錄。
圖13 遠程登錄

- 輸入用戶名和創建ECS時設置的密碼。
圖14 輸入用戶名和密碼

- 獲取InfluxDB客戶端。
方法一:
wget //dl.influxdata.com/influxdb/releases/influxdb-1.7.9-static_linux_amd64.tar.gz
方法二:
下載,并將InfluxDB客戶端安裝包上傳到彈性云主機。
- 解壓客戶端工具包。
tar -xzf influxdb-1.7.9-static_linux_amd64.tar.gz
- 在“influx”工具所在目錄下,連接數據庫實例。
- 使用如下命令,進入InfluxDB目錄。
cd influxdb-1.7.9-1 - 連接GeminiDB Influx實例。
./influx -ssl -unsafeSsl -username ' < DB_USER > ' -password ' < DB_PWD > ' -host < DB_HOST > -port < DB_PORT > 示例:./influx -ssl -unsafeSsl -username 'rwuser' -password '<DB_PWD>' -host 192.xx.xx.xx -port 8635
- 使用如下命令,進入InfluxDB目錄。
表1 參數說明
| 參數 | 說明 |
|---|---|
| <DB_USER> | 管理員賬戶名,默認為rwuser。您可以在“實例管理”頁面單擊實例名稱,進入“基本信息”頁面,在“數據庫信息”模塊的“管理員賬戶名”處獲取。 |
| <DB_PWD> | 管理員密碼。 |
| <DB_HOST> | 待連接實例的負載均衡地址。 負載均衡地址目前處于公測階段,如需使用,請您聯系客服申請開通。 場景一:在創建實例之前,如果您已經申請開通了負載均衡地址,您可以在創建實例頁面查看到系統默認勾選負載均衡地址。待實例創建成功后,您可以單擊實例名稱,進入“基本信息”頁面,在網絡信息區域獲取到“負載均衡地址”。 場景二:如果實例已創建成功,此時如果需要使用負載均衡地址,則需要聯系客服幫您開通。開通成功后,您可以單擊實例名稱,進入“基本信息”頁面,刷新頁面,在網絡信息區域獲取到“負載均衡地址”。 |
| <DB_PORT> | 實例的端口。您可以在“實例管理”頁面單擊實例名稱,進入“基本信息”頁面,在“網絡信息 > 負載均衡地址”處獲取端口信息。 |
- 出現如下信息,說明連接成功。
Connected to //host:port version 1.7.4
InfluxDB shell version:1.7.9
>
基礎語法
庫語法
-
創建數據庫。
create_database_stmt = "CREATE DATABASE" db_name [ WITH [ retention_policy_duration ] [ retention_policy_replication ] [ retention_policy_shard_group_duration ] [ retention_policy_name ] ] .
說明上述命令中,[]表示可選選項。
示例:
- 創建名稱為“mydb”的數據庫。
CREATE DATABASE "mydb"
- 創建名稱為“mydb”的數據庫,使用指定的保留策略,名稱為“myrp”,保留時間為1天,副本數量為1,shardGroup的存儲時間為30分鐘。
CREATE DATABASE "mydb" WITH DURATION 1d REPLICATION 1 SHARD DURATION 30m NAME "myrp"
- 創建名稱為“mydb”的數據庫,使用默認的保留策略,保留策略名稱為“myrp”。
CREATE DATABASE "mydb" WITH NAME "myrp"
查詢數據庫
SHOW DATABASES
切換數據庫
USE db_name
刪除數據庫
DROP DATABASE "db_name"
圖15 創建數據庫

RETENTION POLICY語法
-
創建RETENTION POLICY,當前RETENTION POLICY命名中不能包含逗號、冒號、分號和點號。
create_retention_policy_stmt = "CREATE RETENTION POLICY" policy_name on_clause retention_policy_duration retention_policy_replication [ retention_policy_shard_group_duration ] [ "DEFAULT" ] .
說明上述命令中,[]表示可選選項。
示例:
- 創建數據保留策略。
CREATE RETENTION POLICY "10m_events" ON "somedb" DURATION 60m REPLICATION 2
- 創建數據保留策略,并將其設置為默認。
CREATE RETENTION POLICY "10m_events" ON "somedb" DURATION 60m REPLICATION 2 DEFAULT
- 創建數據保留策略,并指定shardGroup的存儲時長。
CREATE RETENTION POLICY "10m_events" ON "somedb" DURATION 60m REPLICATION 2 SHARD DURATION 30m
查看RETENTION POLICY
show retention policies on <database name>
圖16 創建并查看RETENTION POLICY

說明同時使用retention_policy_duration與retention_policy_shard_group_duration時,retention_policy_duration需大于retention_policy_shard_group_duration。
- 刪除RETENTION POLICY
DROP RETENTION POLICY policy_name ON db_name
- 修改RETENTION POLICY
Alter_retention_policy_stmt ?= "ALTER RETENTION POLICY" policy_name on_clause
retention_policy_option
[ retention_policy_option ]
[ retention_policy_option ]
[ retention_policy_option ] .
說明上述命令中,[]表示可選選項。
示例:
- 修改默認保留策略。
ALTER RETENTION POLICY "1h_cpu" ON "mydb" DEFAULT
- 修改保留時間和副本數量。
ALTER RETENTION POLICY "policy1" ON "somedb" DURATION 1h REPLICATION 4
新增數據
insert into <retention policy> measurement,tagKey=tagValue fieldKey=fieldValue timestamp
說明插入數據時,系統會根據需要創建measurement。
- 使用默認的retention policy。
insert demo,name=LiSi math=99,english=90,language=95
新增數據,measurement為demo,tag為name,field為math、english和language
- 使用指定的retention policy。
insert into rp_1_hours demo,name=ZhangSan math=99,english=90,language=95
查詢數據
- 在默認RETENTION POLICY中查詢
select * from demo where time < xxx and time > xxx
- 在指定RETENTION POLICY中查詢
select * from rp_1_hours.demo where time < xxx and time > xxx
說明查詢語句需要指定查詢的時間范圍,包括上界和下界。
修改數據
使用insert來修改數據,當所有tag和timestamp完全相同時,insert會覆蓋原有內容。
圖17 修改數據

刪除數據
delete from measurement where time …
圖18 刪除數據

刪除series
drop series from "measurement" where "tag_name" = 'tag_value'
圖19 查看demo

圖20 刪除series

說明drop series的where不支持time、fields,且會刪除所有RETENTION POLICY中符合條件的series。
HELP命令
- HELP ,查看所有支持的命令。
圖21 查看支持的全部命令

- HELP
,查詢某一命令的使用方法。
示例:HELP DESC