03-get-started.md 7.2 KB
Newer Older
D
dingbo 已提交
1 2
---
title: 立即开始
3
description: " Docker,安装包或使用 apt-get 快速安装 TDengine, 通过命令行程序 taos shell 和工具 taosdemo 快速体验 TDengine 功能"
D
dingbo 已提交
4
---
B
Bo Ding 已提交
5

6 7 8 9 10 11
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
import PkgInstall from "./\_pkg_install.mdx";
import AptGetInstall from "./\_apt_get_install.mdx";

## 安装
B
Bo Ding 已提交
12

13
TDengine 包括服务端、命令行程序 (CLI) 和周边生态工具软件,目前 2.0 版服务端仅在 Linux 系统上安装和运行,后续将支持 Windows、macOS 等系统。 TDengine CLI 可以在 Windows 或 Linux 上安装和运行。在任何操作系统上的应用都可以使用 RESTful 接口连接 TDengine,其中 2.4 之后版本默认使用单独运行的独立组件 taosAdapter 提供 http 服务和更多数据写入方式, taosAdapter 需要手动启动。
14 15 16 17 18 19
2.4 之前的版本中 TDengine 服务端,以及所有服务端 lite 版,均使用由 taosd 内置的 http 服务。

TDengine 支持 X64/ARM64/MIPS64/Alpha64 硬件平台,后续将支持 ARM32、RISC-V 等 CPU 架构。

<Tabs defaultValue="apt-get">
<TabItem value="docker" label="Docker">
B
Bo Ding 已提交
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
如果已经安装了 docker, 只需执行下面的命令。

```shell
docker run -d -p 6030-6049:6030-6049 -p 6030-6049:6030-6049/udp tdengine/tdengine
```

确定该容器已经启动并且在正常运行

```shell
docker ps
```

进入该容器并执行 bash

```shell
docker exec -it <containrid> bash
```

然后就可以执行相关的 Linux 命令操作和访问 TDengine

详细操作方法请参照 [通过 Docker 快速体验 TDengine](/train-fqa/docker)

:::info
从 2.4.0.10 开始,除 taosd 以外,Docker 镜像还包含:taos、taosAdapter、taosdump、taosBenchmark、TDinsight 安装脚本和示例代码。启动 Docker 容器时,将同时启动 taosAdapter 和 taosd,实现对 RESTful 的支持。

:::

:::note
48
暂时不建议生产环境采用 Docker 来部署 TDengine CLI 或服务端,但在开发环境下或初次尝试时,使用 Docker 方式部署是十分方便的。特别是,利用 Docker,可以方便地在 macOS 和 Windows 环境下尝试 TDengine。
B
Bo Ding 已提交
49 50

:::
51 52 53 54 55 56 57 58
</TabItem>
<TabItem value="apt-get" label="apt-get">
<AptGetInstall />
</TabItem>
<TabItem value="pkg" label="安装包">
<PkgInstall />
</TabItem>
<TabItem value="src" label="源码">
B
Bo Ding 已提交
59

60
如果您希望对 TDengine 贡献代码或对内部实现感兴趣,请参考我们的 [TDengine GitHub 主页](https://github.com/taosdata/TDengine) 下载源码构建和安装.
B
Bo Ding 已提交
61

62
下载其他组件、最新 Beta 版及之前版本的安装包,请点击[这里](https://www.taosdata.com/cn/all-downloads/)
B
Bo Ding 已提交
63

64
</TabItem>
B
Bo Ding 已提交
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
</Tabs>

## 启动

使用 `systemctl` 命令来启动 TDengine 的服务进程。

```bash
systemctl start taosd
```

检查服务是否正常工作:

```bash
systemctl status taosd
```

如果 TDengine 服务正常工作,那么您可以通过 TDengine 的命令行程序 `taos` 来访问并体验 TDengine。

:::info

- systemctl 命令需要 _root_ 权限来运行,如果您非 _root_ 用户,请在命令前添加 sudo 。
- 为更好的获得产品反馈,改善产品,TDengine 会采集基本的使用信息,但您可以修改系统配置文件 taos.cfg 里的配置参数 telemetryReporting,将其设为 0,就可将其关闭。
87
- TDengine 采用 FQDN(一般就是 hostname)作为节点的 ID,为保证正常运行,需要给运行 taosd 的服务器配置好 hostname, 在 TDengine CLI 运行的机器配置好 DNS 服务或 hosts 文件,保证 FQDN 能够解析。
B
Bo Ding 已提交
88 89 90 91 92 93 94 95 96 97 98 99
- `systemctl stop taosd` 指令在执行后并不会马上停止 TDengine 服务,而是会等待系统中必要的落盘工作正常完成。在数据量很大的情况下,这可能会消耗较长时间。

TDengine 支持在使用 [`systemd`](https://en.wikipedia.org/wiki/Systemd) 做进程服务管理的 Linux 系统上安装,用 `which systemctl` 命令来检测系统中是否存在 `systemd` 包:

```bash
which systemctl
```

如果系统中不支持 `systemd`,也可以用手动运行 `/usr/local/taos/bin/taosd` 方式启动 TDengine 服务。

:::note

100
## TDengine 命令行 (CLI)
B
Bo Ding 已提交
101

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
102
为便于检查 TDengine 的状态,执行各种即席(Ad Hoc)查询,TDengine 提供一命令行应用程序(以下简称为 TDengine CLI) taos. 要进入 TDengine 命令行,您只要在 Linux 终端执行 `taos` 即可。
B
Bo Ding 已提交
103 104 105 106 107

```bash
taos
```

108
如果连接服务成功,将会打印出欢迎消息和版本信息。如果失败,则会打印错误消息出来(请参考 [FAQ](/train-fqa/faq) 来解决终端连接服务端失败的问题)。 TDengine CLI 的提示符号如下:
B
Bo Ding 已提交
109 110 111 112 113

```cmd
taos>
```

114
在 TDengine CLI中,用户可以通过 SQL 命令来创建/删除数据库、表等,并进行插入查询操作。在终端中运行的 SQL 语句需要以分号结束来运行。示例:
B
Bo Ding 已提交
115

B
Bo Ding 已提交
116
```sql
B
Bo Ding 已提交
117 118 119 120 121 122 123 124 125 126 127 128 129
create database demo;
use demo;
create table t (ts timestamp, speed int);
insert into t values ('2019-07-15 00:00:00', 10);
insert into t values ('2019-07-15 01:00:00', 20);
select * from t;
           ts            |    speed    |
========================================
 2019-07-15 00:00:00.000 |          10 |
 2019-07-15 01:00:00.000 |          20 |
Query OK, 2 row(s) in set (0.003128s)
```

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
130
除执行 SQL 语句外,系统管理员还可以从 TDengine CLI 进行检查系统运行状态、添加删除用户账号等操作。更多细节请参考 [这里](../reference/taos-shell/)
B
Bo Ding 已提交
131 132 133

## 使用 taosBenchmark 体验写入速度

134
启动 TDengine 的服务,在 Linux 终端执行 `taosBenchmark` (曾命名为 `taosdemo`):
B
Bo Ding 已提交
135 136 137 138 139 140 141 142 143

```bash
taosBenchmark
```

该命令将在数据库 test 下面自动创建一张超级表 meters,该超级表下有 1 万张表,表名为 "d0" 到 "d9999",每张表有 1 万条记录,每条记录有 (ts, current, voltage, phase) 四个字段,时间戳从 "2017-07-14 10:40:00 000" 到 "2017-07-14 10:40:09 999",每张表带有标签 location 和 groupId,groupId 被设置为 1 到 10, location 被设置为 "beijing" 或者 "shanghai"。

这条命令很快完成 1 亿条记录的插入。具体时间取决于硬件性能,即使在一台普通的 PC 服务器往往也仅需十几秒。

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
144
taosBenchmark 命令本身带有很多选项,配置表的数目、记录条数等等,您可以设置不同参数进行体验,请执行 `taosBenchmark --help` 详细列出。taosBenchmark 详细使用方法请参照 [如何使用 taosBenchmark 对 TDengine 进行性能测试](https://www.taosdata.com/2021/10/09/3111.html)
B
Bo Ding 已提交
145

146
## 使用 TDengine CLI 体验查询速度
B
Bo Ding 已提交
147

148
在 TDengine CLI 输入查询命令,体验查询速度。
B
Bo Ding 已提交
149 150 151

查询超级表下记录总条数:

B
Bo Ding 已提交
152
```sql
B
Bo Ding 已提交
153 154 155 156 157
taos> select count(*) from test.meters;
```

查询 1 亿条记录的平均值、最大值、最小值等:

B
Bo Ding 已提交
158
```sql
B
Bo Ding 已提交
159 160 161 162 163
taos> select avg(current), max(voltage), min(phase) from test.meters;
```

查询 location="beijing" 的记录总条数:

B
Bo Ding 已提交
164
```sql
B
Bo Ding 已提交
165 166 167 168 169
taos> select count(*) from test.meters where location="beijing";
```

查询 groupId=10 的所有记录的平均值、最大值、最小值等:

B
Bo Ding 已提交
170
```sql
B
Bo Ding 已提交
171 172 173 174 175
taos> select avg(current), max(voltage), min(phase) from test.meters where groupId=10;
```

对表 d10 按 10s 进行平均值、最大值和最小值聚合统计:

B
Bo Ding 已提交
176
```sql
B
Bo Ding 已提交
177 178
taos> select avg(current), max(voltage), min(phase) from test.d10 interval(10s);
```