logo
tt's Note
  • 运维
    • 数据库
    • linux
    • vpn
    • 日志
    • 中间件
    • 服务
    • 监控
    • shell
    • windows
    • 语言
    • 云服务
    • 其他
  • 开发
    • 工具
  • 软件
    • 浏览器
    • 多端
    • win
    • mac
    • 网站
  • 项目
    • 效率工具
    • 兴趣
  • 脚本
    • jenkins
    数据库概览
    数据库备份
    clickhouse
    elasticsearch
    mysql
    postgresql
    tdengine
    上一页postgresql

    #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