目录
先看官网安装
操作说明
备份数据
创建备份目录
备份数据库test
删除数据库
恢复数据
校验数据
应用场景
选择写入数据的形式
问题记录
通过 Docker 快速体验 TDengine | TDengine 文档 | 涛思数据
docker pull docker pull tdengine/tdengine:latest下载镜像后
自己安装的时候,肯定要创建挂载目录.所以先创建目录
1. 创建挂载目录, 注意给文件赋予读和写的权限。
sudo mkdir -p /data1/TDengine/taos/log
sudo mkdir -p /data1/TDengine/taos/data
合并创建语句形式 : mkdir -p /data1/TDengine/taos/{data,log}
3.启动容器
sudo docker run -d --name tdengine -p 6041:6041 -p 6030-6035:6030-6035 -p 6030-6035:6030-6035/udp -v /data1/TDengine/taos/log:/var/log/taos -v /data1/TDengine/taos/data:/var/lib/taos tdengine/tdengine:latest
解释
#--name tdengine ##指定容器名称便于访问
#-p 6041:6041 ##映射RESTful端口
#-p 6030-6035:6030-6035
#-p 6030-6035:6030-6035/udp ##映射taos客户端使用端口,必须包含TCP和UDP
#-v /wahle/v-TDengine/taos/log:/var/log/taos ##映射日志目录
#-v /wahle/v-TDengine/taos/data:/var/lib/taos ##映射数据目录
#tdengine/tdengine:latest ## 最新的映像版本名称为tdengine
4. 进入TD数据库,修改TD的root密码,密码默认是:taosdata
[root@dev TDengine-server]# taos
taos> alter user root pass '123456';
5. 官网的可视化管理工具 TDengineGUI
下载地址:第三方工具 | TDengine 文档 | 涛思数据
6. vnode mnode dnode 概念区别
文档 - 涛思数据 | TDengine
数据库
采集量metric 设备的采集物理量
标签 label/tag 设备静态属性。但 TDengine 容许用户修改、删除或增加标签值。
数据点采集 data collection point
Dengine 采取一个数据采集点一张表的策略,要求对每个数据采集点单独建表
表用来代表一个具体的数据采集点,超级表用来代表一组相同类型的数据采集点集合
mkdir /taos/dump
taosdump -o /taos/dump/ -D test
cat dump_result.txt
drop database test;
show databases;
taosdump -i /taos/dump
select count(*) from meters;
客户端新建数据库,报错
TDengine 中的 SQL 写入即模式化写入,在写入到 Database 之前,需要预先定义好数据表的 Schema 模式,具体来说就是数据表包含多少列,每列存放的数据类型是什么。即在建表时使用标准的 SQL 语句指定表的 Schema,再遵照预先建好的列跟标签值的数量和类型进行数据写入。
除了 SQL 写入外, TDengine 还支持三种无模式写入协议,分别是 InfluxDB Line 协议、OpenTSDB Telnet 协议和 OpenTSDB JSON 格式协议。如果你对 NoSQL 比较熟悉,那对无模式写入应该就不会陌生了。通俗来讲,无模式写入为用户提供了一种以文本格式将数据写入到 TDengine 的方式,更加便捷。
物联网场景中的应用经常需要采集比较多的数据项,用于实现智能控制、业务分析和设备监控等,由于应用逻辑的版本升级,或者设备自身的硬件调整等原因,数据采集项有可能比较频繁地出现变动,为了在这种情况下仍能方便地完成数据记录工作,TDengine 从 2.2 版本开始就提供了无模式写入方式,写入时无需提前创建超级表和子表,其引擎能自适应数据并对表结构进行调整。
1.注意权限问题
2.如果启动一次后,再次启动失败了。记得清除一下data目录和og目录。
安装之后访问数据库
进入容器
docker exec -it tdengine sh
>taos
支持多种数据写入方式sql 、influxdb 、opentsdb telnet、 opentadb json
具体操作文档指导:
InfluxDB 行协议 | TDengine 文档 | 涛思数据
3. 创建数据库报错 DB error: Out of dnodes (0.000000s)
解决说明:
这个错误提示表明 TDengine 的数据节点已经用完,无法继续创建新的数据库。这可能是由于您的 TDengine 数据库中已经存在了大量的数据库或者数据表,并且系统没有足够的资源来支持创建新的数据库。
为了解决这个问题,您可以尝试以下方法:
查看已经存在的数据库和数据表,并删除不再需要的数据:使用 SHOW DATABASES 和 SHOW TABLES
命令可以查看已经存在的数据库和数据表,使用 DROP DATABASE 和 DROP TABLE 命令可以删除不再需要的数据库和数据表。
调整 TDengine 的配置参数,增加数据节点的数量:可以通过修改配置文件(taos.cfg)中的参数(如 vnode.count 和
vnode.cache.size)来增加数据节点的数量。具体参数设置可以参考 TDengine 的官方文档。
扩容 TDengine 的服务器资源:如果以上两种方法无法解决问题,可以考虑扩大 TDengine 的服务器资源,例如增加
CPU、内存和硬盘容量等,以支持更多的数据节点。
查找配置文件目录: /usr/local/taos/cfg/taos.cfg
修改参数 supportVnodes
修改之后,重启docker服务才生效。