目录
此版本整理时为2.0.x版本,TDengine版本迭代频繁,某些命令语法可能有变动。
操作整理:
数据库操作:
#创建一个数据库test
CREATE DATABASE test;
#创建库时候的参数(非必选)
Keep:数据保留时间。超过此时间后自动删除过期的数据,缺省时默认3650天(十年)
EG: CREATE DATABASE test keep 730;
days: 数据落成文件的时间范围。days 10 表示每十天的数据为一个数据文件,此范围官方推荐为10-100。
EG: CREATE DATABASE test keep 730 days 10;
comp:文件压缩标志位,数据文件的压缩程度。一阶段压缩根据数据的类型进行了相应的压缩。二阶段压缩在一阶段压缩的基础上又用通用压缩算法进行了压缩,压缩率更高。0:关闭,1:一阶段压缩,2:两阶段压缩。默认为2。
EG: CREATE DATABASE mydb comp 1;
replica: 虚拟节点(vnode) 数量, 可理解为数据副本数量,一个数据库的数据将会存放在虚拟节点中,多个虚拟节点将会使用m/s主从方式异步备份。
虚拟节点数量必须小于等于集群的节点数(或cpu核心数),默认与CPU核数相同,可通过maxVgroupsPerDb配置。默认为1。
EG: CREATE DATABASE test keep 730 days 10 replica 2;
quorum: 设置值大于1的话,开启同步复制。异步复制时存在极低概率会数据丢失(主虚拟节点和从虚拟节点同时宕机)。
EG: CREATE DATABASE test keep 730 days 10 replica 2 quorum 2;
blocks: TDengine的每个虚拟节点都会占用一些独立的内存做缓存池用,数据放在缓存池中提高查询速度,内存的大小由blocks和cache参数决定。
blocks配置虚拟节点可以有几个内存块,cache设定每个内存块的大小,blocks默认为4个,cache默认16M,也就是说虚拟节点所占的内存默认至少为4*16=66M。官方文档两处不一致,一处blocks默认为6,一处说默认为4。
EG: CREATE DATABASE mydb keep 730 days 10 replica 2 quorum 2 blocks 8;
precision:设定时间精度,默认ms毫秒,us为微秒
EG: CREATE DATABASE mydb precision 'us';
walLevel:TDengine支持WAL(Write Ahead Log)机制,实现数据的容错。请求到来时,先将请求的原始数据包写入数据库日志文件,等数据成功写入数据库数据文件后,再删除相应的WAL。配置项为0、1和2, 默认为1。
0:不写wal; 1:写wal, 但不执行fsync; 2:写wal, 而且执行fsync。
fsync:当wal设置为2时,执行fsync的周期。设置为0,表示每次写入,立即执行fsync。单位为毫秒,默认值:3000。fsync我理解为虚拟节点的数据同步周期,默认3000毫秒,为0 时表示数据总是立即同步,但会影响效率
minRows: 文件块中记录的最小条数,单位为条,默认值:100。
maxRows: 文件块中记录的最大条数,单位为条,默认值:4096。
#显示服务器和客户端的版本信息
select client_version();
select server_version();
#查看服务器状态
select server_status();
#显示所有的数据库的信息,包含数据库的各个参数
show databases;
#使用数据库 test </