Skip to content
Permalink
Browse files

*: Update reference to new URL structure (#1123)

  • Loading branch information...
morgo committed May 10, 2019
1 parent 610a657 commit ce5c22756664090ce9858570c858ee1e202f8268
Showing with 329 additions and 228 deletions.
  1. +2 −1 sql/tidb-memory-control.md → dev/how-to/configure/memory-control.md
  2. +3 −2 {sql → dev/how-to/configure}/time-zone.md
  3. +2 −1 op-guide/pd-configuration.md → dev/reference/configuration/pd-server/configuration.md
  4. +3 −2 {op-guide → dev/reference/configuration/tidb-server}/configuration.md
  5. +4 −3 sql/variable.md → dev/reference/configuration/tidb-server/mysql-variables.md
  6. +3 −2 sql/tidb-specific.md → dev/reference/configuration/tidb-server/tidb-specific-variables.md
  7. +2 −1 op-guide/tikv-configuration.md → dev/reference/configuration/tikv-server/configuration.md
  8. +4 −3 sql/error.md → dev/reference/error-codes.md
  9. +3 −2 op-guide/gc.md → dev/reference/garbage-collection.md
  10. +4 −3 op-guide/dashboard-overview-info.md → dev/reference/key-monitoring-metrics/overview.md
  11. +12 −11 op-guide/dashboard-pd-info.md → dev/reference/key-monitoring-metrics/pd.md
  12. +4 −3 op-guide/tidb-dashboard-info.md → dev/reference/key-monitoring-metrics/tidb.md
  13. +17 −16 op-guide/dashboard-tikv-info.md → dev/reference/key-monitoring-metrics/tikv.md
  14. +7 −6 {sql → dev/reference}/mysql-compatibility.md
  15. +2 −1 {sql → dev/reference/performance}/optimizer-hints.md
  16. +3 −2 {sql → dev/reference/performance}/sql-optimizer-overview.md
  17. +2 −1 {sql → dev/reference/performance}/statistics.md
  18. +2 −1 {op-guide → dev/reference/performance}/tune-tikv.md
  19. +3 −2 {sql → dev/reference/performance}/understanding-the-query-execution-plan.md
  20. +2 −1 sql/security-compatibility.md → dev/reference/security/compatibility.md
  21. +3 −2 sql/privilege.md → dev/reference/security/privilege-system.md
  22. +3 −2 {sql → dev/reference/security}/user-account-management.md
  23. +2 −2 sql/character-set-support.md → dev/reference/sql/character-set.md
  24. +7 −0 { → dev/reference}/sql/constraints.md
  25. +3 −2 sql/datatype.md → dev/reference/sql/data-types.md
  26. +3 −2 {sql → dev/reference/sql/functions-and-operators}/aggregate-group-by-functions.md
  27. +2 −1 {sql → dev/reference/sql/functions-and-operators}/bit-functions-and-operators.md
  28. +3 −2 {sql → dev/reference/sql/functions-and-operators}/cast-functions-and-operators.md
  29. +2 −1 {sql → dev/reference/sql/functions-and-operators}/control-flow-functions.md
  30. +2 −1 {sql → dev/reference/sql/functions-and-operators}/date-and-time-functions.md
  31. +2 −1 {sql → dev/reference/sql/functions-and-operators}/encryption-and-compression-functions.md
  32. +2 −1 {sql → dev/reference/sql/functions-and-operators}/information-functions.md
  33. +2 −1 {sql → dev/reference/sql/functions-and-operators}/json-functions.md
  34. +2 −1 {sql → dev/reference/sql/functions-and-operators}/miscellaneous-functions.md
  35. +2 −1 {sql → dev/reference/sql/functions-and-operators}/numeric-functions-and-operators.md
  36. +2 −1 {sql → dev/reference/sql/functions-and-operators}/operators.md
  37. +3 −2 {sql → dev/reference/sql/functions-and-operators}/precision-math.md
  38. +2 −1 sql/functions-and-operators-reference.md → dev/reference/sql/functions-and-operators/reference.md
  39. +2 −1 {sql → dev/reference/sql/functions-and-operators}/string-functions.md
  40. +2 −1 ...ersion-in-expression-evaluation.md → dev/reference/sql/functions-and-operators/type-conversion.md
  41. +3 −2 { → dev/reference}/sql/generated-columns.md
  42. +3 −2 {sql → dev/reference/sql/language-structure}/comment-syntax.md
  43. +2 −1 {sql → dev/reference/sql/language-structure}/expression-syntax.md
  44. +2 −1 {sql → dev/reference/sql/language-structure}/keywords-and-reserved-words.md
  45. +2 −1 {sql → dev/reference/sql/language-structure}/literal-values.md
  46. +3 −2 {sql → dev/reference/sql/language-structure}/schema-object-names.md
  47. +3 −2 {sql → dev/reference/sql/language-structure}/user-defined-variables.md
  48. +2 −1 sql/connection-and-APIs.md → dev/reference/supported-clients.md
  49. +8 −1 {sql → dev/reference/system-databases}/information-schema.md
  50. +2 −1 sql/system-database.md → dev/reference/system-databases/mysql.md
  51. +5 −4 tispark/tispark-user-guide.md → dev/reference/tispark.md
  52. +2 −1 {tools/dm → dev/reference/tools/data-migration}/cluster-operations.md
  53. +2 −1 ...s/dm/dm-configuration-file-overview.md → dev/reference/tools/data-migration/configure/overview.md
  54. +2 −1 ...iguration-file-intro.md → dev/reference/tools/data-migration/configure/task-configuration-file.md
  55. +2 −1 tools/dm/practice.md → dev/reference/tools/data-migration/deploy.md
  56. +5 −4 {tools/dm → dev/reference/tools/data-migration/features}/manually-handling-sharding-ddl-locks.md
  57. +3 −2 tools/dm/data-synchronization-features.md → dev/reference/tools/data-migration/features/overview.md
  58. +7 −6 {tools/dm → dev/reference/tools/data-migration/features}/shard-merge.md
  59. +4 −3 tools/dm/manage-task.md → dev/reference/tools/data-migration/manage-tasks.md
  60. +2 −1 {tools/dm → dev/reference/tools/data-migration}/monitor.md
  61. +2 −2 dev/{how-to/migrate/using-data-migration.md → reference/tools/data-migration/overview.md}
  62. +3 −2 tools/dm/shard-merge-scenario.md → dev/reference/tools/data-migration/usage-scenarios/shard-merge.md
  63. +3 −2 ...zation-scenario.md → dev/reference/tools/data-migration/usage-scenarios/simple-synchronization.md
  64. +7 −6 { → dev/reference}/tools/download.md
  65. +3 −2 { → dev/reference}/tools/loader.md
  66. +4 −3 { → dev/reference}/tools/mydumper.md
  67. +3 −2 { → dev/reference}/tools/pd-control.md
  68. +2 −1 { → dev/reference}/tools/pd-recover.md
  69. +6 −5 { → dev/reference}/tools/syncer.md
  70. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/binlog-slave-client.md
  71. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/deploy.md
  72. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/monitor.md
  73. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/operation.md
  74. +3 −3 {tools/binlog → dev/reference/tools/tidb-binlog}/overview.md
  75. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/reparo.md
  76. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/tidb-binlog-kafka.md
  77. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/tidb-binlog-local.md
  78. +2 −1 {tools/binlog → dev/reference/tools/tidb-binlog}/upgrade.md
  79. +3 −2 tools/tidb-controller.md → dev/reference/tools/tidb-control.md
  80. +2 −1 {tools/lightning → dev/reference/tools/tidb-lightning}/checkpoints.md
  81. +2 −1 {tools/lightning → dev/reference/tools/tidb-lightning}/csv.md
  82. +6 −5 {tools/lightning → dev/reference/tools/tidb-lightning}/deployment.md
  83. +2 −1 {tools/lightning → dev/reference/tools/tidb-lightning}/monitor.md
  84. +2 −1 tools/lightning/overview-architecture.md → dev/reference/tools/tidb-lightning/overview.md
  85. +2 −1 tools/lightning/filter.md → dev/reference/tools/tidb-lightning/table-filter.md
  86. +2 −1 sql/transaction.md → dev/reference/transactions/overview.md
  87. +2 −1 {sql → dev/reference/transactions}/transaction-isolation.md
  88. +2 −1 {sql → dev/reference/transactions}/transaction-model.md
  89. +4 −3 tools/lightning/faq.md → faq/tidb-lightning.md
  90. +46 −45 FAQ.md → faq/tidb.md
  91. +2 −1 op-guide/upgrade-faq.md → faq/upgrades.md
  92. +1 −0 ROADMAP.md → roadmap.md
@@ -1,7 +1,8 @@
---
title: TiDB Memory Control
summary: Learn how to configure the memory quota of a query and avoid OOM (out of memory).
category: user guide
category: how-to
aliases: ['/docs/sql/tidb-memory-control/']
---

# TiDB Memory Control
@@ -1,7 +1,8 @@
---
title: Time Zone Support
summary: Learn how to set the time zone and its format.
category: user guide
category: how-to
aliases: ['/docs/sql/time-zone/']
---

# Time Zone Support
@@ -69,4 +70,4 @@ In this example, no matter how you adjust the value of the time zone, the value
> **Note:**
>
> - Time zone is involved during the conversion of the value of Timestamp and Datetime, which is handled based on the current `time_zone` of the session.
> - For data migration, you need to pay special attention to the time zone setting of the master database and the slave database.
> - For data migration, you need to pay special attention to the time zone setting of the master database and the slave database.
@@ -1,7 +1,8 @@
---
title: PD Configuration Flags
summary: Learn some configuration flags of PD.
category: operations
category: reference
aliases: ['/docs/op-guide/pd-configuration/']
---

# PD Configuration Flags
@@ -1,7 +1,8 @@
---
title: Configuration Flags
summary: Learn some configuration flags for TiDB
category: operations
category: reference
aliases: ['/docs/op-guide/configuration/']
---

# Configuration Flags
@@ -24,7 +25,7 @@ TiDB is configurable using command-line flags and environment variables. The def

- The configuration file
- Default: ""
- If you have specified the configuration file, TiDB reads the configuration file. If the corresponding configuration also exists in the command line flags, TiDB uses the configuration in the command line flags to overwrite that in the configuration file. For detailed configuration information, see [TiDB Configuration File Description](../op-guide/tidb-config-file.md)
- If you have specified the configuration file, TiDB reads the configuration file. If the corresponding configuration also exists in the command line flags, TiDB uses the configuration in the command line flags to overwrite that in the configuration file. For detailed configuration information, see [TiDB Configuration File Description](/op-guide/tidb-config-file.md)

## `--host`

@@ -1,7 +1,8 @@
---
title: The System Variables
summary: Learn how to use the system variables in TiDB.
category: user guide
category: reference
aliases: ['/docs/sql/variable/']
---

# The System Variables
@@ -10,7 +11,7 @@ The system variables in MySQL are the system parameters that modify the operatio

## Set the system variables

You can use the [`SET`](../sql/admin.md#the-set-statement) statement to change the value of the system variables. Before you change, consider the scope of the variable. For more information, see [MySQL Dynamic System Variables](https://dev.mysql.com/doc/refman/5.7/en/dynamic-system-variables.html).
You can use the [`SET`](/dev/reference/sql/statements/set-variable.md) statement to change the value of the system variables. Before you change, consider the scope of the variable. For more information, see [MySQL Dynamic System Variables](https://dev.mysql.com/doc/refman/5.7/en/dynamic-system-variables.html).

### Set Global variables

@@ -113,4 +114,4 @@ The following MySQL system variables are fully supported in TiDB and have the sa

## TiDB Specific System Variables

See [TiDB Specific System Variables](../sql/tidb-specific.md).
See [TiDB Specific System Variables](/sql/tidb-specific.md).
@@ -1,7 +1,8 @@
---
title: TiDB Specific System Variables
summary: Use system variables specific to TiDB to optimize performance.
category: user guide
category: reference
aliases: ['/docs/sql/tidb-specific/']
---

# TiDB Specific System Variables
@@ -255,7 +256,7 @@ set @@global.tidb_distsql_scan_concurrency = 10

- Scope: SESSION | GLOBAL
- Default: 0
- This variable is used to set whether to disable automatic retry of explicit transactions. If you set this variable to 1, the transaction does not retry automatically. If there is a transactional conflict, the transaction needs to be retried at the application layer. To decide whether you need to disable automatic retry, see [description of optimistic transactions](../sql/transaction-isolation.md#description-of-optimistic-transactions).
- This variable is used to set whether to disable automatic retry of explicit transactions. If you set this variable to 1, the transaction does not retry automatically. If there is a transactional conflict, the transaction needs to be retried at the application layer. To decide whether you need to disable automatic retry, see [description of optimistic transactions](/sql/transaction-isolation.md#description-of-optimistic-transactions).

### tidb_enable_table_partition

@@ -1,7 +1,8 @@
---
title: TiKV Configuration Flags
summary: Learn some configuration flags of TiKV.
category: operations
category: reference
aliases: ['/docs/op-guide/tikv-configuration/']
---

# TiKV Configuration Flags
@@ -1,7 +1,8 @@
---
title: Error Codes and Troubleshooting
summary: Learn about the error codes and solutions in TiDB.
category: user guide
category: reference
aliases: ['/docs/sql/error/']
---

# Error Codes and Troubleshooting
@@ -23,8 +24,8 @@ TiDB is compatible with the error codes in MySQL, and in most cases returns the
| 9004 | This error occurs when a large number of transactional conflicts exist in the database. | Check the code of application. |
| 9005 | A certain Raft Group is not available, such as the number of replicas is not enough. This error usually occurs when the TiKV server is busy or the TiKV node is down. | Check the state/monitor/log of the TiKV server. |
| 9006 | The interval of GC Life Time is too short and the data that should be read by the long transactions might be cleared. | Extend the interval of GC Life Time. |
| 9500 | A single transaction is too large. | See [here](../FAQ.md#the-error-message-transaction-too-large-is-displayed) for the solution. |
| 9500 | A single transaction is too large. | See [here](/FAQ.md#the-error-message-transaction-too-large-is-displayed) for the solution. |

## Troubleshooting

See the [troubleshooting](../trouble-shooting.md) and [FAQ](../FAQ.md) documents.
See the [troubleshooting](/trouble-shooting.md) and [FAQ](/FAQ.md) documents.
@@ -1,7 +1,8 @@
---
title: TiDB Garbage Collection (GC)
summary: Use Garbage Collection (GC) to clear the obsolete data of TiDB.
category: advanced
category: reference
aliases: ['/docs/op-guide/gc/']
---

# TiDB Garbage Collection (GC)
@@ -89,4 +90,4 @@ Clear the data before the safe point of each key and the write record.

> **Note:**
>
> If the last record in all the write records of `Put` and `Delete` types before the safe point is `Put`, this record and its data cannot be deleted directly. Otherwise, you cannot successfully perform the read operation whose timestamp is after the safe point and before the next version of the key.
> If the last record in all the write records of `Put` and `Delete` types before the safe point is `Put`, this record and its data cannot be deleted directly. Otherwise, you cannot successfully perform the read operation whose timestamp is after the safe point and before the next version of the key.
@@ -1,12 +1,13 @@
---
title: Key Metrics
summary: Learn some key metrics displayed on the Grafana Overview dashboard.
category: operations
category: reference
aliases: ['/docs/op-guide/dashboard-overview-info/']
---

# Key Metrics

If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [TiDB Monitoring Framework Overview](../op-guide/monitor-overview.md).
If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [TiDB Monitoring Framework Overview](/op-guide/monitor-overview.md).

The Grafana dashboard is divided into a series of sub dashboards which include Overview, PD, TiDB, TiKV, Node\_exporter, Disk Performance, and so on. A lot of metrics are there to help you diagnose.

@@ -74,4 +75,4 @@ System Info | IO Util | the disk usage ratio, 100% at a maximum; generally you n

## Interface of the Overview dashboard

![Overview Dashboard](../media/overview.png)
![Overview Dashboard](/media/overview.png)
@@ -1,12 +1,13 @@
---
title: Key Monitoring Metrics of PD
summary: Learn some key metrics displayed on the Grafana PD dashboard.
category: operations
category: reference
aliases: ['/docs/op-guide/dashboard-pd-info/']
---

# Key Monitoring Metrics of PD

If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [Overview of the Monitoring Framework](../op-guide/monitor-overview.md).
If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [Overview of the Monitoring Framework](/op-guide/monitor-overview.md).

The Grafana dashboard is divided into a series of sub dashboards which include Overview, PD, TiDB, TiKV, Node\_exporter, Disk Performance, and so on. A lot of metrics are there to help you diagnose.

@@ -92,36 +93,36 @@ Heartbeat | 99% Region heartbeat latency | The heartbeat latency of each TiKV in

### Cluster

![PD Dashboard - Cluster metrics](../media/pd-dashboard-cluster.png)
![PD Dashboard - Cluster metrics](/media/pd-dashboard-cluster.png)

### Balance

![PD Dashboard - Balance metrics](../media/pd-dashboard-balance.png)
![PD Dashboard - Balance metrics](/media/pd-dashboard-balance.png)

### HotRegion

![PD Dashboard - HotRegion metrics](../media/pd-dashboard-hot-region.png)
![PD Dashboard - HotRegion metrics](/media/pd-dashboard-hot-region.png)

### Scheduler

![PD Dashboard - Scheduler metrics](../media/pd-dashboard-scheduler.png)
![PD Dashboard - Scheduler metrics](/media/pd-dashboard-scheduler.png)

### Operator

![PD Dashboard - Operator metrics](../media/pd-dashboard-operator.png)
![PD Dashboard - Operator metrics](/media/pd-dashboard-operator.png)

### gRPC

![PD Dashboard - gRPC metrics](../media/pd-dashboard-grpc.png)
![PD Dashboard - gRPC metrics](/media/pd-dashboard-grpc.png)

### etcd

![PD Dashboard - etcd metrics](../media/pd-dashboard-etcd.png)
![PD Dashboard - etcd metrics](/media/pd-dashboard-etcd.png)

### TiDB

![PD Dashboard - TiDB metrics](../media/pd-dashboard-tidb.png)
![PD Dashboard - TiDB metrics](/media/pd-dashboard-tidb.png)

### Heartbeat

![PD Dashboard - Heartbeat metrics](../media/pd-dashboard-heartbeat.png)
![PD Dashboard - Heartbeat metrics](/media/pd-dashboard-heartbeat.png)
@@ -1,12 +1,13 @@
---
title: TiDB Monitoring Metrics
summary: Learn some key metrics displayed on the Grafana TiDB dashboard.
category: operations
category: reference
aliases: ['/docs/op-guide/tidb-dashboard-info/']
---

# TiDB Monitoring Metrics

If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [TiDB Monitoring Framework Overview](../op-guide/monitor-overview.md).
If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [TiDB Monitoring Framework Overview](/op-guide/monitor-overview.md).

The Grafana dashboard is divided into a series of sub dashboards which include Overview, PD, TiDB, TiKV, Node\_exporter, Disk Performance, and so on. A lot of metrics are there to help you diagnose.

@@ -94,4 +95,4 @@ To understand the key metrics displayed on the TiDB dashboard, check the followi
- Worker Action OPM: the statistics of GC related operations, including `run_job`, `resolve_lock`, and `delete\_range`
- Duration 99: the time consumed by GC related operations
- GC Failure OPM: the number of failed GC related operations
- Too Many Locks Error OPM: the number of the error that GC clears up too many locks
- Too Many Locks Error OPM: the number of the error that GC clears up too many locks
@@ -1,12 +1,13 @@
---
title: Key Monitoring Metrics of TiKV
summary: Learn some key metrics displayed on the Grafana TiKV dashboard.
category: operations
category: reference
aliases: ['/docs/op-guide/dashboard-tikv-info/']
---

# Key Monitoring Metrics of TiKV

If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [Overview of the Monitoring Framework](../op-guide/monitor-overview.md).
If you use Ansible to deploy the TiDB cluster, the monitoring system is deployed at the same time. For more information, see [Overview of the Monitoring Framework](/op-guide/monitor-overview.md).

The Grafana dashboard is divided into a series of sub dashboards which include Overview, PD, TiDB, TiKV, Node\_exporter, Disk Performance, and so on. A lot of metrics are there to help you diagnose.

@@ -316,56 +317,56 @@ This section shows images of the service panels on the TiKV dashboard.

### Cluster

![TiKV Dashboard - Cluster metrics](../media/tikv-dashboard-cluster.png)
![TiKV Dashboard - Cluster metrics](/media/tikv-dashboard-cluster.png)

### Errors

![TiKV Dashboard - Errors metrics](../media/tikv-dashboard-errors.png)
![TiKV Dashboard - Errors metrics](/media/tikv-dashboard-errors.png)

### Server

![TiKV Dashboard - Server metrics](../media/tikv-dashboard-server.png)
![TiKV Dashboard - Server metrics](/media/tikv-dashboard-server.png)

### Raft IO

![TiKV Dashboard - Raft IO metrics](../media/tikv-dashboard-raftio.png)
![TiKV Dashboard - Raft IO metrics](/media/tikv-dashboard-raftio.png)

### Raft process

![TiKV Dashboard - Raft process metrics](../media/tikv-dashboard-raft-process.png)
![TiKV Dashboard - Raft process metrics](/media/tikv-dashboard-raft-process.png)

### Raft message

![TiKV Dashboard - Raft message metrics](../media/tikv-dashboard-raft-message.png)
![TiKV Dashboard - Raft message metrics](/media/tikv-dashboard-raft-message.png)

### Raft propose

![TiKV Dashboard - Raft propose metrics](../media/tikv-dashboard-raft-propose.png)
![TiKV Dashboard - Raft propose metrics](/media/tikv-dashboard-raft-propose.png)

### Raft admin

![TiKV Dashboard - Raft admin metrics](../media/tikv-dashboard-raft-admin.png)
![TiKV Dashboard - Raft admin metrics](/media/tikv-dashboard-raft-admin.png)

### Local reader

![TiKV Dashboard - Local reader metrics](../media/tikv-dashboard-local-reader.png)
![TiKV Dashboard - Local reader metrics](/media/tikv-dashboard-local-reader.png)

### Storage

![TiKV Dashboard - Storage metrics](../media/tikv-dashboard-storage.png)
![TiKV Dashboard - Storage metrics](/media/tikv-dashboard-storage.png)

### Scheduler

![TiKV Dashboard - Scheduler metrics](../media/tikv-dashboard-scheduler.png)
![TiKV Dashboard - Scheduler metrics](/media/tikv-dashboard-scheduler.png)

### Scheduler - batch_get

![TiKV Dashboard - Scheduler - batch_get metrics](../media/tikv-dashboard-scheduler-batch-get.png)
![TiKV Dashboard - Scheduler - batch_get metrics](/media/tikv-dashboard-scheduler-batch-get.png)

### Scheduler - cleanup

![TiKV Dashboard - Scheduler - cleanup metrics](../media/tikv-dashboard-scheduler-cleanup.png)
![TiKV Dashboard - Scheduler - cleanup metrics](/media/tikv-dashboard-scheduler-cleanup.png)

### Scheduler - commit

![TiKV Dashboard - Scheduler commit metrics](../media/tikv-dashboard-scheduler-commit.png)
![TiKV Dashboard - Scheduler commit metrics](/media/tikv-dashboard-scheduler-commit.png)
@@ -1,7 +1,8 @@
---
title: Compatibility with MySQL
summary: Learn about the compatibility of TiDB with MySQL, and the unsupported and different features.
category: user guide
category: reference
aliases: ['/docs/sql/mysql-compatibility/']
---

# Compatibility with MySQL
@@ -12,7 +13,7 @@ Currently TiDB Server advertises itself as MySQL 5.7 and works with most MySQL d

> **Note:**
>
> This page refers to general differences between MySQL and TiDB. Please also see the dedicated pages for [Security Compatibility with MySQL](../sql/security-compatibility.md) and [Transaction Model](../sql/transaction-model.md) compatibility.
> This page refers to general differences between MySQL and TiDB. Please also see the dedicated pages for [Security Compatibility with MySQL](/sql/security-compatibility.md) and [Transaction Model](/sql/transaction-model.md) compatibility.
## Unsupported features

@@ -37,7 +38,7 @@ Currently TiDB Server advertises itself as MySQL 5.7 and works with most MySQL d
+ `CREATE TABLE tblName AS SELECT stmt` syntax
+ `CREATE TEMPORARY TABLE` syntax
+ `XA` syntax (TiDB uses a two-phase commit internally, but this is not exposed via an SQL interface)
+ `LOCK TABLE` syntax (TiDB uses `tidb_snapshot` to [produce backups](../tools/mydumper.md))
+ `LOCK TABLE` syntax (TiDB uses `tidb_snapshot` to [produce backups](/tools/mydumper.md))
+ `CHECK TABLE` syntax
+ `CHECKSUM TABLE` syntax

@@ -66,7 +67,7 @@ In TiDB, auto-increment columns are only guaranteed to be incremental and unique
### Performance schema

Performance schema tables return empty results in TiDB. TiDB uses a combination of [Prometheus and Grafana](https://pingcap.com/docs/op-guide/monitor/#use-prometheus-and-grafana) for performance metrics instead.
Performance schema tables return empty results in TiDB. TiDB uses a combination of [Prometheus and Grafana](/op-guide/monitor.md#use-prometheus-and-grafana) for performance metrics instead.

### Query Execution Plan

@@ -128,14 +129,14 @@ Create Table: CREATE TABLE `t1` (
1 row in set (0.00 sec)
```

Architecturally, TiDB does support a similar storage engine abstraction to MySQL, and user tables are created in the engine specified by the [`--store`](server-command-option.md#--store) option used when you start tidb-server (typically `tikv`).
Architecturally, TiDB does support a similar storage engine abstraction to MySQL, and user tables are created in the engine specified by the [`--store`](/sql/server-command-option.md#--store) option used when you start tidb-server (typically `tikv`).

### SQL modes

TiDB supports **all of the SQL modes** from MySQL 5.7 with minor exceptions:

- The compatibility modes deprecated in MySQL 5.7 and removed in MySQL 8.0 are not supported (such as `ORACLE`, `POSTGRESQL` etc).
- The mode `ONLY_FULL_GROUP_BY` has minor [semantic differences](../sql/aggregate-group-by-functions.md#differences-from-mysql) to MySQL 5.7, which we plan to address in the future.
- The mode `ONLY_FULL_GROUP_BY` has minor [semantic differences](/sql/aggregate-group-by-functions.md#differences-from-mysql) to MySQL 5.7, which we plan to address in the future.
- The SQL modes `NO_DIR_IN_CREATE` and `NO_ENGINE_SUBSTITUTION` are supported for compatibility, but are not applicable to TiDB.

### Default differences
Oops, something went wrong.

0 comments on commit ce5c227

Please sign in to comment.
You can’t perform that action at this time.