https://docs.influxdata.com/influxdb/v2/
Install InfluxDB
https://docs.influxdata.com/influxdb/v2/install/
Linux
https://docs.influxdata.com/influxdb/v2/install/?t=Linux
Install InfluxDB as a service with systemd
具体命令见上面的官方文档。
相关的命令,根据需要,自行加上sudo
。
APT 是全局性的包管理器,一般所有用户共享系统安装的软件包。对于 influxdb 同样如此,安装后,各个用户都能使用,只是各自有各自的配置文件,不会干扰。具体在后面会说。
1 | apt list --installed | grep influx |
就日常使用感受来说,官方文档说的第 2 种安装方式较少用。
查看服务状态。
1 | sudo service influxdb status |
如果要具体查看端口状态。端口号默认是8086
。
1 | sudo lsof -i :8086 |
如有需要。虽然个人感觉一般用不到。
1 | sudo kill -9 <PID> |
启动服务。
1 | sudo service influxdb start |
停止服务。
1 | sudo service influxdb stop |
influx 安装后,默认是开机自启的,即使之前使用了stop
,重启服务器或者 WSL 之类的之后会自己启动。如果想关闭自启动,可以使用这个。
1 | sudo systemctl disable influxdb |
Windows
https://docs.influxdata.com/influxdb/v2/install/?t=Windows
更建议使用 Scoop 安装。
1 | scoop install influxdb |
Get started with InfluxDB
https://docs.influxdata.com/influxdb/v2/get-started/
UI 和 CLI 都是很方便的,建议都使用。
http://localhost:8086/
在 influxdb 运行的情况下。
对于服务器也是可以的,如果只在用一个服务器,那么上面的地址就直接可以的,或者使用服务器的 IP 地址。
Set up InfluxDB
https://docs.influxdata.com/influxdb/v2/get-started/setup/
这里个人建议通过 CLI 命令行来设置。
1 | influx setup |
按照提示,设置自己的 username,password,organization,bucket,等等内容。
名字不要紧,后续都可以再修改的。
Develop with the InfluxDB API
Python client library
1 | pip install influxdb-client |
还是很方便的。另外 java 也有相关库可以用。并且这些默认是使用 v2 版本。
Write data to InfluxDB
https://docs.influxdata.com/influxdb/v2/write-data/
Delete data
https://docs.influxdata.com/influxdb/v2/write-data/delete-data/
可以删除指定时间段的数据。
Administer InfluxDB
https://docs.influxdata.com/influxdb/v2/admin/
具体对于 organization,bucket,user,token 等的管理。包括添加,删除,查看,更新,等操作。
另外也可以参考后文 reference 部分。
Manage organizations
https://docs.influxdata.com/influxdb/v2/admin/organizations/
Update an organization
https://docs.influxdata.com/influxdb/v2/admin/organizations/update-org/
1 | influx org update \ |
这样更新之后,配置文件的 org 并不会跟着更新,还是需要自己手动修改配置。
Manage buckets
https://docs.influxdata.com/influxdb/v2/admin/buckets/
个人建议是使用 CLI 来管理,UI 当然也行,主要看自己的使用习惯和方便程度。另外,对于这些,能直接修改就修改,能更新就更新,尽量少用删除相关的命令。
Manage API tokens
https://docs.influxdata.com/influxdb/v2/admin/tokens/
View tokens
https://docs.influxdata.com/influxdb/v2/admin/tokens/view-tokens/
1 | influx auth list |
请善待自己的 token,好好利用,在配置文件里好好保管。这样就不用专门去记住自己的用户名,组织,等内容,即使忘记密码也可以重新设置。
Update a token
https://docs.influxdata.com/influxdb/v2/admin/tokens/update-tokens/
这里说的更新 token 指的是更新 token 的描述和状态等内容。
假如自己真的不小心在 UI 或者 CLI 将自己唯一的 token 给删除 delete 了,那么就需要重新 setup 走一遍。先停止运行 influxdb 服务,删除数据文件,删除配置信息,然后重新运行 influxdb 服务。
1 | sudo service influxdb stop |
Manage users
https://docs.influxdata.com/influxdb/v2/admin/users/
View users
https://docs.influxdata.com/influxdb/v2/admin/users/view-users/
1 | influx user list |
Change your password
https://docs.influxdata.com/influxdb/v2/admin/users/change-password/
用于修改用户的密码,或者说更新密码,重置密码。只要配置文件有 token 或者手动带上 token 参数。无需记住原先的密码。也常用于忘记密码的场景。
1 | influx user password \ |
InfluxDB reference
https://docs.influxdata.com/influxdb/v2/reference/
InfluxDB internals
https://docs.influxdata.com/influxdb/v2/reference/internals/
InfluxDB storage engine
https://docs.influxdata.com/influxdb/v2/reference/internals/storage-engine/
数据文件存储相关。
InfluxDB file system layout
https://docs.influxdata.com/influxdb/v2/reference/internals/file-system-layout/
Configs path
~/.influxdbv2/configs
在什么用户模式下setup
的,配置文件就在什么用户目录下,这样就各自独立。特别地,在 root 模式下setup
的,配置文件就在/root/.influxdbv2/configs
。
语法是 toml,默认的配置内容大致是这样的。从内容也可以看出,配置文件的一个很重要的作用就是保管自己的 token。
1 | [default] |
这里的org
是可选的,可以不写这一行,或者直接留空。当然,如果自己有多个 org,那么可以在这里指定默认的。
如果默认只有一个,那么建议写上比较方便,这样比如influx bucket list
的时候,不需要再去指定 org。只是如果自己后面要修改 org 的名字或者其他内容的时候,还得记得另外再修改这个配置里的内容。
文档里面说 Installed as a package 方式的 Configs path 是/var/lib/influxdb/configs
,不过一般不会这么安装,用处不大。
位于/etc/influxdb/config.toml
的配置文件,是 influxd configuration file,用于服务器的配置。
1 | bolt-path = "/var/lib/influxdb/influxd.bolt" |
Engine path
/var/lib/influxdb/engine/
TSM directories and files layout
/var/lib/influxdb/engine/data/
数据文件主要就是存这个地方。使用du
命令查看总的大小。
1 | du -sh /var/lib/influxdb/ |
WAL directories and files layout
/var/lib/influxdb/engine/wal/
Command line tools
https://docs.influxdata.com/influxdb/v2/reference/cli/
其中influxd
命令主要是服务器的配置,对于用户来说,一般较少用。
influx - InfluxDB command line interface
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/
influx setup
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/setup/
influx auth
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/auth/
influx config
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/config/
这里也说了,默认是将配置写在~/.influxdbv2/configs
。
influx config set
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/config/set/
这里set
和update
同义。
相关命令行的效果相当于直接修改该文件。
用户的 token 也是放在此处,放这之后就不需要单独保存记忆,平时使用命令行也不需要每次都带上--token
参数。
influx user
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/user/
influx org
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/org/
influx bucket
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/bucket/
influx delete
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/delete/
influx v1
https://docs.influxdata.com/influxdb/v2/reference/cli/influx/v1/
1 | influx v1 shell |
可以用于使用 shell 模式。
说些什么吧!