SHOW PLACEMENT FOR
x
m
l
d
SHOW PLACEMENT FOR
summarizes all placement options, and presents them in the canonical form for a specific table, database schema, or partition.
The statement returns a result set in which the Scheduling_State
field indicates the current progress that the Placement Driver (PD) has made in scheduling the placement:
PENDING
: The PD has not yet started scheduling the placement. This might indicate that the placement rules are semantically correct, but cannot currently be satisfied by the cluster. For example, ifFOLLOWERS=4
but there are only 3 TiKV stores that are candidates for followers.INPROGRESS
: The PD is currently scheduling the placement.SCHEDULED
: The PD has successfully scheduled the placement.
Synopsis
- ShowStmt
- ShowPlacementTarget
ShowStmt ::=
"SHOW" "PLACEMENT" "FOR" ShowPlacementTarget
ShowPlacementTarget ::=
DatabaseSym DBName
| "TABLE" TableName
| "TABLE" TableName "PARTITION" Identifier
Examples
CREATE PLACEMENT POLICY p1 PRIMARY_REGION="us-east-1" REGIONS="us-east-1,us-west-1" FOLLOWERS=4;
ALTER DATABASE test PLACEMENT POLICY=p1;
CREATE TABLE t1 (a INT);
SHOW PLACEMENT FOR DATABASE test;
SHOW PLACEMENT FOR TABLE t1;
SHOW CREATE TABLE t1\G
CREATE TABLE t3 (a INT) PARTITION BY RANGE (a) (PARTITION p1 VALUES LESS THAN (10), PARTITION p2 VALUES LESS THAN (20));
SHOW PLACEMENT FOR TABLE t3 PARTITION p1\G
Query OK, 0 rows affected (0.02 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
+---------------+----------------------------------------------------------------------+------------------+
| Target | Placement | Scheduling_State |
+---------------+----------------------------------------------------------------------+------------------+
| DATABASE test | PRIMARY_REGION="us-east-1" REGIONS="us-east-1,us-west-1" FOLLOWERS=4 | INPROGRESS |
+---------------+----------------------------------------------------------------------+------------------+
1 row in set (0.00 sec)
+---------------+-------------+------------------+
| Target | Placement | Scheduling_State |
+---------------+-------------+------------------+
| TABLE test.t1 | FOLLOWERS=4 | INPROGRESS |
+---------------+-------------+------------------+
1 row in set (0.00 sec)
***************************[ 1. row ]***************************
Table | t1
Create Table | CREATE TABLE `t1` (
`a` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin /*T![placement] PLACEMENT POLICY=`p1` */
1 row in set (0.00 sec)
***************************[ 1. row ]***************************
Target | TABLE test.t3 PARTITION p1
Placement | PRIMARY_REGION="us-east-1" REGIONS="us-east-1,us-west-1" FOLLOWERS=4
Scheduling_State | PENDING
1 row in set (0.00 sec)
MySQL compatibility
This statement is a TiDB extension to MySQL syntax.
See also
SHOW PLACEMENT FORwas last updated 4/17/2025, 6:32:15 AM: fix some grammar issues and typo (#20784) (#20792)