influxdb时序数据库常用命令

前言

InfluxDB时序数据库常用命令主要涉及用户管理、数据库管理、数据操作(增删改查) 等方面。以下是根据多个来源整理的InfluxDB常用命令及其说明:

一、用户管理

1. 登录用户

java 复制代码
> auth
username: admin
password:
>

2. 查看用户

java 复制代码
SHOW USERS

3. 创建普通用户

java 复制代码
CREATE USER "username" WITH PASSWORD 'password'

4. 创建管理员用户

java 复制代码
CREATE USER "username" WITH PASSWORD 'password' WITH ALL PRIVILEGES

5. 修改用户密码

java 复制代码
SET PASSWORD FOR "username" = 'newpassword'

6. 权限授予
授予用户对数据库的所有权限

java 复制代码
GRANT ALL PRIVILEGES ON db_name TO "username"

授予用户对所有数据库的所有权限

java 复制代码
GRANT ALL PRIVILEGES TO "username"

7. 权限撤销
撤销用户对数据库的所有权限

java 复制代码
REVOKE ALL PRIVILEGES ON db_name FROM "username"

撤销用户对所有数据库的所有权限

java 复制代码
REVOKE ALL PRIVILEGES FROM "username"

二、数据库管理

1. 查看所有数据库

java 复制代码
SHOW DATABASES

2. 创建数据库

java 复制代码
CREATE DATABASE db_name

3. 删除数据库

java 复制代码
DROP DATABASE db_name

4. 使用某个数据库

java 复制代码
USE db_name

三、数据操作

1. 插入数据

InfluxDB中没有显式的新建表的语句,表(在InfluxDB中称为measurement)会在插入数据时自动创建。

java 复制代码
INSERT INTO measurement_name,tag1=value1,tag2=value2 field_key=field_value [timestamp]

measurement_name:表名(测量指标名)。
tag1=value1,tag2=value2:索引(标签),用于快速查询。
field_key=field_value:字段名和字段值,字段值可以是数值、浮点型、布尔型等。
timestamp:时间戳,如果不指定则自动添加当前时间戳。

2. 查询数据

java 复制代码
SELECT * FROM "measurement_name" WHERE condition LIMIT N

*:表示选择所有字段。
condition:查询条件,可以使用WHERE子句指定。
LIMIT N:限制返回的记录数。

还可以使用GROUP BY、ORDER BY等子句进行分组和排序。

3. 查看表(measurement)信息
查看所有表(measurement)

java 复制代码
SHOW MEASUREMENTS

查看表的tag key

java 复制代码
SHOW TAG KEYS FROM "measurement_name"

查看表的field key

java 复制代码
SHOW FIELD KEYS FROM "measurement_name"

查看表的series

java 复制代码
SHOW SERIES FROM "measurement_name"

4. 删除数据

InfluxDB没有直接删除单条记录的命令,但可以通过删除measurement(表)或配置数据保留策略来删除数据。
删除measurement(表)

java 复制代码
DROP MEASUREMENT "measurement_name"

配置数据保留策略(Retention Policy, RP)
创建RP

java 复制代码
CREATE RETENTION POLICY "rp_name" ON "db_name" DURATION 3w REPLICATION 1 DEFAULT

修改RP

java 复制代码
ALTER RETENTION POLICY "rp_name" ON "db_name" DURATION 30d DEFAULT

删除RP

java 复制代码
DROP RETENTION POLICY "rp_name" ON "db_name"

注意事项

以上命令主要适用于InfluxDB 1.x版本,InfluxDB 2.x版本的语法和命令有所不同,特别是查询语言从InfluxQL变为了Flux。
在使用InfluxDB时,应确保已正确安装并配置了数据库环境。
对于生产环境中的数据操作,建议先在测试环境中进行验证,以避免数据丢失或损坏。

相关推荐
AOwhisky8 小时前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
小红卒8 小时前
mysql之udf提权
数据库·mysql·网络安全
Trouvaille ~8 小时前
【Redis篇】Redis 哨兵(Sentinel):高可用自动故障转移
数据库·redis·缓存·中间件·sentinel·高可用·哨兵
qfljg8 小时前
oracle 迁移到postgres
数据库·oracle
giaz14n9X9 小时前
Redis 分布式锁进阶第五十七篇
数据库·redis·分布式
剑神一笑9 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库
Maynor9969 小时前
Codex API 网关迁移与流量优化实战
数据库·oracle
WyCAGy8ij10 小时前
Redis 分布式锁进阶第二篇讲解
数据库·redis·分布式
南极企鹅10 小时前
MySQL的两大支柱:undo Log&redo log
数据库·mysql·oracle
智航GIS10 小时前
ArcGIS大师之路500技---078文件数据库的加密与解密
数据库·arcgis