Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions TOC.md
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,8 @@
+ [`BEGIN`](/sql-statements/sql-statement-begin.md)
+ [`CHANGE COLUMN`](/sql-statements/sql-statement-change-column.md)
+ [`COMMIT`](/sql-statements/sql-statement-commit.md)
+ [`CHANGE DRAINER`](/sql-statements/sql-statement-change-drainer.md)
+ [`CHANGE PUMP`](/sql-statements/sql-statement-change-pump.md)
+ [`CREATE DATABASE`](/sql-statements/sql-statement-create-database.md)
+ [`CREATE INDEX`](/sql-statements/sql-statement-create-index.md)
+ [`CREATE SEQUENCE`](/sql-statements/sql-statement-create-sequence.md)
Expand Down Expand Up @@ -270,16 +272,19 @@
+ [`SHOW CREATE TABLE`](/sql-statements/sql-statement-show-create-table.md)
+ [`SHOW CREATE USER`](/sql-statements/sql-statement-show-create-user.md)
+ [`SHOW DATABASES`](/sql-statements/sql-statement-show-databases.md)
+ [`SHOW DRAINER STATUS`](/sql-statements/sql-statement-show-drainer-status.md)
+ [`SHOW ENGINES`](/sql-statements/sql-statement-show-engines.md)
+ [`SHOW ERRORS`](/sql-statements/sql-statement-show-errors.md)
+ [`SHOW [FULL] FIELDS FROM`](/sql-statements/sql-statement-show-fields-from.md)
+ [`SHOW GRANTS`](/sql-statements/sql-statement-show-grants.md)
+ [`SHOW INDEX [FROM|IN]`](/sql-statements/sql-statement-show-index.md)
+ [`SHOW INDEXES [FROM|IN]`](/sql-statements/sql-statement-show-indexes.md)
+ [`SHOW KEYS [FROM|IN]`](/sql-statements/sql-statement-show-keys.md)
+ [`SHOW MASTER STATUS`](/sql-statements/sql-statement-show-master-status.md)
+ [`SHOW PLUGINS`](/sql-statements/sql-statement-show-plugins.md)
+ [`SHOW PRIVILEGES`](/sql-statements/sql-statement-show-privileges.md)
+ [`SHOW [FULL] PROCESSSLIST`](/sql-statements/sql-statement-show-processlist.md)
+ [`SHOW PUMP STATUS`](/sql-statements/sql-statement-show-pump-status.md)
+ [`SHOW SCHEMAS`](/sql-statements/sql-statement-show-schemas.md)
+ [`SHOW STATUS`](/sql-statements/sql-statement-show-status.md)
+ [`SHOW TABLE NEXT_ROW_ID`](/sql-statements/sql-statement-show-table-next-rowid.md)
Expand Down
71 changes: 71 additions & 0 deletions sql-statements/sql-statement-change-drainer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
title: CHANGE DRAINER
summary: An overview of the usage of CHANGE DRAINER for the TiDB database.
category: reference
---

# CHANGE DRAINER

The `CHANGE DRAINER` statement modifies the status information for Drainer in the cluster.

> **Tip:**
>
> Drainer's state is automatically reported to PD while running. Only when Drainer is under abnormal circumstances and its state is inconsistent with the state information stored in PD, you can use the `CHANGE DRAINER` statement to modify the state information stored in PD.

## Examples

{{< copyable "sql" >}}

```sql
SHOW DRAINER STATUS;
```

```sql
+----------|----------------|--------|--------------------|---------------------|
| NodeID | Address | State | Max_Commit_Ts | Update_Time |
+----------|----------------|--------|--------------------|---------------------|
| drainer1 | 127.0.0.3:8249 | Online | 408553768673342532 | 2019-04-30 00:00:03 |
+----------|----------------|--------|--------------------|---------------------|
| drainer2 | 127.0.0.4:8249 | Online | 408553768673345531 | 2019-05-01 00:00:04 |
+----------|----------------|--------|--------------------|---------------------|
2 rows in set (0.00 sec)
```

It can be seen that drainer1's state has not been updated for more than a day, the Drainer is in an abnormal state, but the `State` remains `Online`. After using `CHANGE DRAINER`, the Drainer's `State` is changed to 'paused':

{{< copyable "sql" >}}

```sql
CHANGE DRAINER TO NODE_STATE ='paused' FOR NODE_ID 'drainer1';
```

```sql
Query OK, 0 rows affected (0.01 sec)
```

{{< copyable "sql" >}}

```sql
SHOW DRAINER STATUS;
```

```sql
+----------|----------------|--------|--------------------|---------------------|
| NodeID | Address | State | Max_Commit_Ts | Update_Time |
+----------|----------------|--------|--------------------|---------------------|
| drainer1 | 127.0.0.3:8249 | Paused | 408553768673342532 | 2019-04-30 00:00:03 |
+----------|----------------|--------|--------------------|---------------------|
| drainer2 | 127.0.0.4:8249 | Online | 408553768673345531 | 2019-05-01 00:00:04 |
+----------|----------------|--------|--------------------|---------------------|
2 rows in set (0.00 sec)
```

## MySQL compatibility

MySQL dosen't support this statement.

## See also

* [SHOW PUMP STATUS](/sql-statements/sql-statement-show-pump-status.md)
* [SHOW DRAINER STATUS](/sql-statements/sql-statement-show-drainer-status.md)
* [CHANGE PUMP STATUS](/sql-statements/sql-statement-change-pump.md)
71 changes: 71 additions & 0 deletions sql-statements/sql-statement-change-pump.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
title: CHANGE PUMP
summary: An overview of the usage of CHANGE PUMP for the TiDB database.
category: reference
---

# CHANGE PUMP

The `CHANGE PUMP` statement modifies the status information for Pump in the cluster.

> **Tip:**
>
> Pump's state is automatically reported to PD while running. Only when Pump is under abnormal circumstances and its state is inconsistent with the state information stored in PD, you can use the `CHANGE PUMP` statement to modify the state information stored in PD.

## Examples

{{< copyable "sql" >}}

```sql
SHOW PUMP STATUS;
```

```sql
+--------|----------------|--------|--------------------|---------------------|
| NodeID | Address | State | Max_Commit_Ts | Update_Time |
+--------|----------------|--------|--------------------|---------------------|
| pump1 | 127.0.0.1:8250 | Online | 408553768673342237 | 2019-04-30 00:00:01 |
+--------|----------------|--------|--------------------|---------------------|
| pump2 | 127.0.0.2:8250 | Online | 408553768673342335 | 2019-05-01 00:00:02 |
+--------|----------------|--------|--------------------|---------------------|
2 rows in set (0.00 sec)
```

It can be seen that pump1's state has not been updated for more than a day, the Pump is in an abnormal state, but the `State` remains `Online`. After using `CHANGE PUMP`, the Pump's `State` is changed to 'paused' :

{{< copyable "sql" >}}

```sql
CHANGE PUMP TO NODE_STATE ='paused' FOR NODE_ID 'pump1';
```

```sql
Query OK, 0 rows affected (0.01 sec)
```

{{< copyable "sql" >}}

```sql
SHOW PUMP STATUS;
```

```sql
+--------|----------------|--------|--------------------|---------------------|
| NodeID | Address | State | Max_Commit_Ts | Update_Time |
+--------|----------------|--------|--------------------|---------------------|
| pump1 | 127.0.0.1:8250 | Paused | 408553768673342237 | 2019-04-30 00:00:01 |
+--------|----------------|--------|--------------------|---------------------|
| pump2 | 127.0.0.2:8250 | Online | 408553768673342335 | 2019-05-01 00:00:02 |
+--------|----------------|--------|--------------------|---------------------|
2 rows in set (0.00 sec)
```

## MySQL compatibility

MySQL dosen't support this statement.

## See also

* [SHOW PUMP STATUS](/sql-statements/sql-statement-show-pump-status.md)
* [SHOW DRAINER STATUS](/sql-statements/sql-statement-show-drainer-status.md)
* [CHANGE DRAINER STATUS](/sql-statements/sql-statement-change-drainer.md)
38 changes: 38 additions & 0 deletions sql-statements/sql-statement-show-drainer-status.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: SHOW DRAINER STATUS
summary: An overview of the usage of SHOW DRAINER STATUS for the TiDB database.
category: reference
---

# SHOW DRAINER STATUS

The `SHOW DRAINER STATUS` statement displays the status information for all Drainer nodes in the cluster.

## Examples

{{< copyable "sql" >}}

```sql
SHOW DRAINER STATUS;
```

```sql
+----------|----------------|--------|--------------------|---------------------|
| NodeID | Address | State | Max_Commit_Ts | Update_Time |
+----------|----------------|--------|--------------------|---------------------|
| drainer1 | 127.0.0.3:8249 | Online | 408553768673342532 | 2019-05-01 00:00:03 |
+----------|----------------|--------|--------------------|---------------------|
| drainer2 | 127.0.0.4:8249 | Online | 408553768673345531 | 2019-05-01 00:00:04 |
+----------|----------------|--------|--------------------|---------------------|
2 rows in set (0.00 sec)
```

## MySQL compatibility

MySQL dosen't support this statement.

## See also

* [SHOW PUMP STATUS](/sql-statements/sql-statement-show-pump-status.md)
* [CHANGE PUMP STATUS](/sql-statements/sql-statement-change-pump.md)
* [CHANGE DRAINER STATUS](/sql-statements/sql-statement-change-drainer.md)
37 changes: 37 additions & 0 deletions sql-statements/sql-statement-show-master-status.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
title: SHOW MASTER STATUS
summary: An overview of the usage of SHOW MASTER STATUS for the TiDB database.
category: reference
---

# SHOW MASTER STATUS

The `SHOW MASTER STATUS` statement displays the latest TSO in the cluster.

## Examples

{{< copyable "sql" >}}

```sql
SHOW MASTER STATUS;
```

```sql
+-------------+--------------------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+-------------+--------------------+--------------+------------------+-------------------+
| tidb-binlog | 416916363252072450 | | | |
+-------------+--------------------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
```

## MySQL compatibility

The output of `SHOW MASTER STATUS` is designed to match MySQL. However, the execution results are different in that the MySQL result is the binlog location information and the TiDB result is the latest TSO information.

## See also

* [SHOW PUMP STATUS](/sql-statements/sql-statement-show-pump-status.md)
* [SHOW DRAINER STATUS](/sql-statements/sql-statement-show-drainer-status.md)
* [CHANGE PUMP STATUS](/sql-statements/sql-statement-change-pump.md)
* [CHANGE DRAINER STATUS](/sql-statements/sql-statement-change-drainer.md)
38 changes: 38 additions & 0 deletions sql-statements/sql-statement-show-pump-status.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: SHOW PUMP STATUS
summary: An overview of the usage of SHOW PUMP STATUS for the TiDB database.
category: reference
---

# SHOW PUMP STATUS

The `SHOW PUMP STATUS` statement displays the status information for all Pump nodes in the cluster.

## Examples

{{< copyable "sql" >}}

```sql
SHOW PUMP STATUS;
```

```sql
+--------|----------------|--------|--------------------|---------------------|
| NodeID | Address | State | Max_Commit_Ts | Update_Time |
+--------|----------------|--------|--------------------|---------------------|
| pump1 | 127.0.0.1:8250 | Online | 408553768673342237 | 2019-05-01 00:00:01 |
+--------|----------------|--------|--------------------|---------------------|
| pump2 | 127.0.0.2:8250 | Online | 408553768673342335 | 2019-05-01 00:00:02 |
+--------|----------------|--------|--------------------|---------------------|
2 rows in set (0.00 sec)
```

## MySQL compatibility

MySQL dosen't support this statement.

## See also

* [SHOW DRAINER STATUS](/sql-statements/sql-statement-show-drainer-status.md)
* [CHANGE PUMP STATUS](/sql-statements/sql-statement-change-pump.md)
* [CHANGE DRAINER STATUS](/sql-statements/sql-statement-change-drainer.md)