Skip to content

Commit 2d9f5d2

Browse files
authored
br: fix description about case-sensitive and insensitive (#20438) (#20505)
1 parent f9a5622 commit 2d9f5d2

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

br/backup-and-restore-overview.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,13 +127,47 @@ Before performing backup and restore, BR compares the TiDB cluster version with
127127

128128
Starting from v7.0.0, TiDB gradually supports performing backup and restore operations through SQL statements. Therefore, it is strongly recommended to use the BR tool of the same major version as the TiDB cluster when backing up and restoring cluster data, and avoid performing data backup and restore operations across major versions. This helps ensure smooth execution of restore operations and data consistency. Starting from v7.6.0, BR restores data in some `mysql` system tables by default, that is, the `--with-sys-table` option is set to `true` by default. When restoring data to a TiDB cluster with a different version, if you encounter an error similar to `[BR:Restore:ErrRestoreIncompatibleSys]incompatible system table` due to different schemas of system tables, you can set `--with-sys-table=false` to skip restoring the system tables and avoid this error.
129129

130+
#### BR version compatibility matrix before TiDB v6.6.0
131+
130132
The compatibility information for BR before TiDB v6.6.0 is as follows:
131133

132134
| Backup version (vertical) \ Restore version (horizontal) | Restore to TiDB v6.0 | Restore to TiDB v6.1 | Restore to TiDB v6.2 | Restore to TiDB v6.3, v6.4, or v6.5 | Restore to TiDB v6.6 |
133135
| ---- | ---- | ---- | ---- | ---- | ---- |
134136
| TiDB v6.0, v6.1, v6.2, v6.3, v6.4, or v6.5 snapshot backup | Compatible (known issue [#36379](https://github.com/pingcap/tidb/issues/36379): if backup data contains an empty schema, BR might report an error.) | Compatible | Compatible | Compatible | Compatible (BR must be v6.6) |
135137
| TiDB v6.3, v6.4, v6.5, or v6.6 log backup| Incompatible | Incompatible | Incompatible | Compatible | Compatible |
136138

139+
#### BR version compatibility matrix between TiDB v6.5.0 and v8.1.0
140+
141+
This section introduces the BR compatibility information for all [Long-Term Support (LTS)](/releases/versioning.md#long-term-support-releases) versions between TiDB v6.5.0 and v8.1.0 (including v6.5.0, v7.1.0, v7.5.0, v8.1.0):
142+
143+
> **Note:**
144+
>
145+
> Known issue: Starting from version v7.2.0, some system table fields in newly created clusters are case-insensitive. However, for clusters that are **upgraded online** from versions earlier than v7.2.0 to v7.2.0 or later, the corresponding system table fields remain case-sensitive. Backup and restore operations involving system tables between these two types of clusters might fail. For more details, see [Issue #43717](https://github.com/pingcap/tidb/issues/43717).
146+
147+
The following table lists the compatibility matrix for full backups. Note that all information in the table applies to newly created clusters. For clusters upgraded from a version earlier than v7.2.0 to v7.2.0 or later, their behavior is consistent with that of backups from v7.1.0.
148+
149+
| Backup version | Compatible restore versions | Incompatible restore versions |
150+
|:--|:--|:--|
151+
| v6.5.0 | 7.1.0 | v7.5.0 and later |
152+
| v7.1.0 | - | v7.5.0 and later |
153+
| v7.5.0 | v7.5.0 and later | - |
154+
| v8.1.0 | v8.1.0 and later | - |
155+
156+
The following table lists the compatibility matrix for log backups. Note that all information in the table applies to newly created clusters. For clusters upgraded from a version earlier than v7.2.0 to v7.2.0 or later, their behavior is consistent with that of backups from v7.1.0.
157+
158+
| Backup version | Compatible restore versions | Incompatible restore versions |
159+
|:--|:--|:--|
160+
| v6.5.0 | 7.1.0 | v7.5.0 and later |
161+
| v7.1.0 | - | v7.5.0 and later |
162+
| v7.5.0 | v7.5.0 and later | - |
163+
| v8.1.0 | v8.1.0 and later | - |
164+
165+
> **Note:**
166+
>
167+
> - When only user data is backed up (full backup or log backup), all versions are compatible with each other.
168+
> - In scenarios where restoring the `mysql` system table is incompatible, you can resolve the problem by setting `--with-sys-table=false` to skip restoring all system tables, or use a more fine-grained filter to just skip incompatible system tables, for example: `--filter '*.*' --filter "__TiDB_BR_Temporary_*.*" --filter '!mysql.*' --filter 'mysql.bind_info' --filter 'mysql.user' --filter 'mysql.global_priv' --filter 'mysql.global_grants' --filter 'mysql.default_roles' --filter 'mysql.role_edges' --filter '!sys.*' --filter '!INFORMATION_SCHEMA.*' --filter '!PERFORMANCE_SCHEMA.*' --filter '!METRICS_SCHEMA.*' --filter '!INSPECTION_SCHEMA.*'`.
169+
> - `-` means that there are no compatibility restrictions for the corresponding scenario.
170+
137171
## See also
138172

139173
- [TiDB Snapshot Backup and Restore Guide](/br/br-snapshot-guide.md)

0 commit comments

Comments
 (0)