tdengine

官方中文文档

启动

默认账号密码为root/taosdata

tdengine-6030.sh

#!/bin/bash

port=6030
http_port=$((${port} + 11))
master_tdengine=$(hostname)-tdengine-${port}
password=password

docker stop tdengine-${port}
docker rm tdengine-${port}

docker run -d \
--name tdengine-${port} \
--hostname $(hostname) \
--restart=always \
-e TAOS_FQDN=$(hostname)-tdengine-${port} \
-e TAOS_FIRST_EP=${master_tdengine} \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-v $(pwd)/data:/var/lib/taos \
-v $(pwd)/log:/var/log/taos \
-v ./config/taos.cfg:/etc/taos/taos.cfg \
-p ${port}:6030 \
-p ${http_port}:6041 \
-p $((${port} + 14))-$((${port} + 19)):6044-6049 \
-p $((${port} + 14))-$((${port} + 19)):6044-6049/udp \
--privileged=true \
tdengine/tdengine:3.3.0.0

# --entrypoint /bin/bash \
# docker exec -it tdengine-${port} taosdemo
# docker run --rm -it -e TAOS_FIRST_EP=tdengine --entrypoint=taos tdengine/tdengine:3.3.0.0

config/taos.cfg

monitor 1
monitorFQDN 172.30.137.38
monitorPort 6043
audit 1
monitorInterval 1
telemetryReporting 1
crashReporting 1

TIP

好像不支持设置docker的环境变量来修改密码,只能通过sql

ALTER USER root PASS 'password';

服务端操作

命令行登录

taos

执行sql

use <database>;

source 1.sql;

导入csv

INSERT INTO gps_information (xxx,xxx) FILE '/tmp/1.csv';

备份与恢复

备份

TIP

注意:连接数据库用的http_port,也就是6041

备份用到的端口是port,也就是6030
docker run -i --rm -v ./:/tmp -w /tmp tdengine/tdengine:3.2.3.0 \
taosdump -A -h 192.168.1.1 -P 6030 -u root -ptaosdata -o /tmp

恢复

似乎不支持指定之间恢复

taosdump -i /bak

监控

需要用到taoskeeper,然后prometheus定时取数据

taoskeeper.sh

#!/bin/bash

port=6043

docker rm -f taoskeeper-${port}
docker run -d \
--name taoskeeper-${port} \
--hostname $(hostname) \
--restart=always \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-v ./config/taoskeeper.toml:/etc/taos/taoskeeper.toml \
-p ${port}:6043 \
--privileged=true \
buyfakett/taoskeeper

config/taos.cfg

# Start with debug middleware for gin
debug = false

# Listen port, default is 6043
port = 6043

# log level
loglevel = "info"

# go pool size
gopoolsize = 50000

# interval for metrics
RotationInterval = "15s"

[tdengine]
host = "172.30.137.38"
port = 6041
username = "root"
password = "Ru9sZZJU78cdUTxi"

[metrics]
# metrics prefix in metrics names.
prefix = "taos"

# database for storing metrics data
database = "log"

# export some tables that are not super table
tables = []

# database options for db storing metrics data
[metrics.databaseoptions]
cachemodel = "none"

[environment]
# Whether running in cgroup.
incgroup = false

[audit]
[audit.database]
name = "audit"
[audit.database.options]
cachemodel = "none"

[log]
#path = "/var/log/taos"
rotationCount = 5
rotationTime = "24h"
rotationSize = 100000000