03-package.md 11.4 KB
Newer Older
1
---
D
danielclow 已提交
2 3
sidebar_label: Package
title: Quick Install from Package
4 5 6 7
---

import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
D
danielclow 已提交
8
import PkgListV3 from "/components/PkgListV3";
9

wafwerar's avatar
wafwerar 已提交
10
This document describes how to install TDengine on Linux/Windows/macOS and perform queries and inserts.
11

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
12
- The easiest way to explore TDengine is through [TDengine Cloud](http://cloud.tdengine.com). 
13 14
- To get started with TDengine on Docker, see [Quick Install on Docker](../../get-started/docker).
- If you want to view the source code, build TDengine yourself, or contribute to the project, see the [TDengine GitHub repository](https://github.com/taosdata/TDengine).
15

16
The full package of TDengine includes the TDengine Server (`taosd`), TDengine Client (`taosc`), taosAdapter for connecting with third-party systems and providing a RESTful interface, a command-line interface (CLI, taos), and some tools. Note that taosAdapter supports Linux only. In addition to connectors for multiple languages, TDengine also provides a [REST API](../../reference/rest-api) through [taosAdapter](../../reference/taosadapter).
17

18
The standard server installation package includes `taos`, `taosd`, `taosAdapter`, `taosBenchmark`, and sample code. You can also download the Lite package that includes only `taosd` and the C/C++ connector.
19

wafwerar's avatar
wafwerar 已提交
20
The TDengine Community Edition is released as Deb and RPM packages. The Deb package can be installed on Debian, Ubuntu, and derivative systems. The RPM package can be installed on CentOS, RHEL, SUSE, and derivative systems. A .tar.gz package is also provided for enterprise customers, and you can install TDengine over `apt-get` as well. The .tar.tz package includes `taosdump` and the TDinsight installation script. If you want to use these utilities with the Deb or RPM package, download and install taosTools separately. TDengine can also be installed on x64 Windows and x64/m1 macOS.
D
danielclow 已提交
21 22

## Installation
23 24

<Tabs>
D
danielclow 已提交
25
<TabItem label=".deb" value="debinst">
26

27 28
1. Download the Deb installation package.
   <PkgListV3 type={6}/>
D
danielclow 已提交
29
2. In the directory where the package is located, use `dpkg` to install the package:
30

31 32
> Please replace `<version>` with the corresponding version of the package downloaded

33
```bash
D
danielclow 已提交
34
sudo dpkg -i TDengine-server-<version>-Linux-x64.deb
35 36
```

D
danielclow 已提交
37
</TabItem>
38

D
danielclow 已提交
39
<TabItem label=".rpm" value="rpminst">
40

D
danielclow 已提交
41
1. Download the .rpm installation package.
42
   <PkgListV3 type={5}/>
D
danielclow 已提交
43
2. In the directory where the package is located, use rpm to install the package:
44

45 46
> Please replace `<version>` with the corresponding version of the package downloaded

47
```bash
D
danielclow 已提交
48
sudo rpm -ivh TDengine-server-<version>-Linux-x64.rpm
49 50 51 52
```

</TabItem>

D
danielclow 已提交
53 54 55
<TabItem label=".tar.gz" value="tarinst">

1. Download the .tar.gz installation package.
56
   <PkgListV3 type={0}/>
D
danielclow 已提交
57
2. In the directory where the package is located, use `tar` to decompress the package:
58

59 60
> Please replace `<version>` with the corresponding version of the package downloaded

61
```bash
D
danielclow 已提交
62
tar -zxvf TDengine-server-<version>-Linux-x64.tar.gz
63 64
```

D
danielclow 已提交
65
In the directory to which the package was decompressed, run `install.sh`:
66 67

```bash
D
danielclow 已提交
68
sudo ./install.sh
69 70
```

D
danielclow 已提交
71 72 73 74
:::info
Users will be prompted to enter some configuration information when install.sh is executing. The interactive mode can be disabled by executing `./install.sh -e no`. `./install.sh -h` can show all parameters with detailed explanation.
:::

75 76
</TabItem>

D
danielclow 已提交
77 78
<TabItem value="apt-get" label="apt-get">
You can use `apt-get` to install TDengine from the official package repository.
79

D
danielclow 已提交
80
**Configure the package repository**
81 82

```bash
D
danielclow 已提交
83 84
wget -qO - http://repos.taosdata.com/tdengine.key | sudo apt-key add -
echo "deb [arch=amd64] http://repos.taosdata.com/tdengine-stable stable main" | sudo tee /etc/apt/sources.list.d/tdengine-stable.list
85 86
```

D
danielclow 已提交
87
You can install beta versions by configuring the following repository:
88 89

```bash
D
danielclow 已提交
90 91
wget -qO - http://repos.taosdata.com/tdengine.key | sudo apt-key add -
echo "deb [arch=amd64] http://repos.taosdata.com/tdengine-beta beta main" | sudo tee /etc/apt/sources.list.d/tdengine-beta.list
92 93
```

D
danielclow 已提交
94
**Install TDengine with `apt-get`**
95

D
danielclow 已提交
96 97 98 99 100
```bash
sudo apt-get update
apt-cache policy tdengine
sudo apt-get install tdengine
```
101

D
danielclow 已提交
102 103 104
:::tip
This installation method is supported only for Debian and Ubuntu.
::::
wafwerar's avatar
wafwerar 已提交
105
</TabItem>
106
<TabItem label="Windows" value="windows">
wafwerar's avatar
wafwerar 已提交
107

108
Note: TDengine only supports Windows Server 2016/2019 and Windows 10/11 on the Windows platform.
wafwerar's avatar
wafwerar 已提交
109 110

1. Download the Windows installation package.
111
   <PkgListV3 type={3}/>
wafwerar's avatar
wafwerar 已提交
112 113
2. Run the downloaded package to install TDengine.

wafwerar's avatar
wafwerar 已提交
114
</TabItem>
wafwerar's avatar
wafwerar 已提交
115
<TabItem label="macOS" value="macos">
wafwerar's avatar
wafwerar 已提交
116

wafwerar's avatar
wafwerar 已提交
117
1. Download the macOS installation package.
wafwerar's avatar
wafwerar 已提交
118 119 120
   <PkgListV3 type={7}/>
2. Run the downloaded package to install TDengine.

121 122 123
</TabItem>
</Tabs>

D
danielclow 已提交
124
:::info
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
125
For information about TDengine other releases, check [Release History](../../releases/tdengine).
D
danielclow 已提交
126 127
:::

128
:::note
129
On the first node in your TDengine cluster, leave the `Enter FQDN:` prompt blank and press **Enter**. On subsequent nodes, you can enter the endpoint of the first dnode in the cluster. You can also configure this setting after you have finished installing TDengine.
130 131 132

:::

D
danielclow 已提交
133
## Quick Launch
134

D
danielclow 已提交
135 136 137 138
<Tabs>
<TabItem label="Linux" value="linux">

After the installation is complete, run the following command to start the TDengine service:
139 140 141 142 143

```bash
systemctl start taosd
```

D
danielclow 已提交
144
Run the following command to confirm that TDengine is running normally:
145 146 147 148 149

```bash
systemctl status taosd
```

D
danielclow 已提交
150
Output similar to the following indicates that TDengine is running normally:
151 152 153 154 155

```
Active: active (running)
```

D
danielclow 已提交
156
Output similar to the following indicates that TDengine has not started successfully:
157 158 159 160 161

```
Active: inactive (dead)
```

D
danielclow 已提交
162
After confirming that TDengine is running, run the `taos` command to access the TDengine CLI.
163

164
The following `systemctl` commands can help you manage TDengine service:
165

D
danielclow 已提交
166
- Start TDengine Server: `systemctl start taosd`
167

D
danielclow 已提交
168
- Stop TDengine Server: `systemctl stop taosd`
169

D
danielclow 已提交
170
- Restart TDengine Server: `systemctl restart taosd`
171

D
danielclow 已提交
172
- Check TDengine Server status: `systemctl status taosd`
173 174 175

:::info

176
- The `systemctl` command requires _root_ privileges. If you are not logged in as the _root_ user, use the `sudo` command.
D
danielclow 已提交
177 178
- The `systemctl stop taosd` command does not instantly stop TDengine Server. The server is stopped only after all data in memory is flushed to disk. The time required depends on the cache size.
- If your system does not include `systemd`, you can run `/usr/local/taos/bin/taosd` to start TDengine manually.
179 180 181

:::

D
danielclow 已提交
182 183 184 185 186 187
</TabItem>

<TabItem label="Windows" value="windows">

After the installation is complete, run `C:\TDengine\taosd.exe` to start TDengine Server.

wafwerar's avatar
wafwerar 已提交
188 189
</TabItem>

wafwerar's avatar
wafwerar 已提交
190
<TabItem label="macOS" value="macos">
wafwerar's avatar
wafwerar 已提交
191

wafwerar's avatar
wafwerar 已提交
192
After the installation is complete, double-click the /applications/TDengine to start the program, or run `launchctl start com.tdengine.taosd` to start TDengine Server.
wafwerar's avatar
wafwerar 已提交
193

wafwerar's avatar
wafwerar 已提交
194 195
The following `launchctl` commands can help you manage TDengine service:

wafwerar's avatar
wafwerar 已提交
196
- Start TDengine Server: `launchctl start com.tdengine.taosd`
wafwerar's avatar
wafwerar 已提交
197

wafwerar's avatar
wafwerar 已提交
198
- Stop TDengine Server: `launchctl stop com.tdengine.taosd`
wafwerar's avatar
wafwerar 已提交
199 200 201 202 203 204 205 206 207 208

- Check TDengine Server status: `launchctl list | grep taosd`

:::info

- The `launchctl` command  does not require _root_ privileges. You don't need to use the `sudo` command.
- The first content returned by the `launchctl list | grep taosd` command is the PID of the program, if '-' indicates that the TDengine service is not running.

:::

D
danielclow 已提交
209 210 211
</TabItem>
</Tabs>

212
## Command Line Interface (CLI)
213

wafwerar's avatar
wafwerar 已提交
214
You can use the TDengine CLI to monitor your TDengine deployment and execute ad hoc queries. To open the CLI, you can execute `taos` in the Linux/macOS terminal where TDengine is installed, or you can run `taos.exe` in the `C:\TDengine` directory of the Windows terminal where TDengine is installed to start the TDengine command line.
215 216 217 218 219

```bash
taos
```

D
danielclow 已提交
220
The TDengine CLI displays a welcome message and version information to indicate that its connection to the TDengine service was successful. If an error message is displayed, see the [FAQ](/train-faq/faq) for troubleshooting information. At the following prompt, you can execute SQL commands.
221 222 223 224 225

```cmd
taos>
```

D
danielclow 已提交
226
For example, you can create and delete databases and tables and run all types of queries. Each SQL command must be end with a semicolon (;). For example:
227 228

```sql
229 230 231 232 233 234 235
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;

236 237 238 239
           ts            |    speed    |
========================================
 2019-07-15 00:00:00.000 |          10 |
 2019-07-15 01:00:00.000 |          20 |
240

241 242 243
Query OK, 2 row(s) in set (0.003128s)
```

wafwerar's avatar
wafwerar 已提交
244
You can also can monitor the deployment status, add and remove user accounts, and manage running instances. You can run the TDengine CLI on either machines. For more information, see [TDengine CLI](../../reference/taos-shell/).
245 246 247 248 249

## Test data insert performance

After your TDengine Server is running normally, you can run the taosBenchmark utility to test its performance:

wafwerar's avatar
wafwerar 已提交
250
Start TDengine service and execute `taosBenchmark` (formerly named `taosdemo`) in a terminal.
251 252 253 254 255

```bash
taosBenchmark
```

256
This command creates the `meters` supertable in the `test` database. In the `meters` supertable, it then creates 10,000 subtables named `d0` to `d9999`. Each table has 10,000 rows and each row has four columns: `ts`, `current`, `voltage`, and `phase`. The timestamps of the data in these columns range from 2017-07-14 10:40:00 000 to 2017-07-14 10:40:09 999. Each table is randomly assigned a `groupId` tag from 1 to 10 and a `location` tag of either `California.Campbell`, `California.Cupertino`, `California.LosAngeles`, `California.MountainView`, `California.PaloAlto`, `California.SanDiego`, `California.SanFrancisco`, `California.SanJose`, `California.SantaClara` or `California.Sunnyvale`.
257 258 259 260 261

The `taosBenchmark` command creates a deployment with 100 million data points that you can use for testing purposes. The time required to create the deployment depends on your hardware. On most modern servers, the deployment is created in ten to twenty seconds.

You can customize the test deployment that taosBenchmark creates by specifying command-line parameters. For information about command-line parameters, run the `taosBenchmark --help` command. For more information about taosBenchmark, see [taosBenchmark](../../reference/taosbenchmark).

D
danielclow 已提交
262
## Test data query performance
263

264
After using `taosBenchmark` to create your test deployment, you can run queries in the TDengine CLI to test its performance:
265

266
From the TDengine CLI (taos) query the number of rows in the `meters` supertable:
267 268

```sql
269
SELECT COUNT(*) FROM test.meters;
270 271
```

D
danielclow 已提交
272
Query the average, maximum, and minimum values of all 100 million rows of data:
273 274

```sql
275
SELECT AVG(current), MAX(voltage), MIN(phase) FROM test.meters;
276 277
```

278
Query the number of rows whose `location` tag is `California.SanFrancisco`:
279 280

```sql
281
SELECT COUNT(*) FROM test.meters WHERE location = "California.SanFrancisco";
282 283
```

D
danielclow 已提交
284
Query the average, maximum, and minimum values of all rows whose `groupId` tag is `10`:
285 286

```sql
287
SELECT AVG(current), MAX(voltage), MIN(phase) FROM test.meters WHERE groupId = 10;
288 289
```

290
Query the average, maximum, and minimum values for table `d10` in 10 second intervals:
291 292

```sql
293
SELECT FIRST(ts), AVG(current), MAX(voltage), MIN(phase) FROM test.d10 INTERVAL(10s);
294
```
295 296

In the query above you are selecting the first timestamp (ts) in the interval, another way of selecting this would be `\_wstart` which will give the start of the time window. For more information about windowed queries, see [Time-Series Extensions](../../taos-sql/distinguished/).