pingcap / pingcap/tidb

To provide better compatibility, "not implemented" features can be suppress by other syntax

Open
#37,984 1 comment 0 reactions 0 assignees View on GitHub
type/feature-request
Dominant language
Go
Stars
40.5k
Forks
6.2k
PR merge metrics
PR metrics pending

Description

## Feature Request

**Is your feature request related to a problem? Please describe:**

TiDB supports less charset and collation than MySQL, take utf8mb3 as example.

If user want to migrate utf8mb3 schema to TiDB, the user will see

```
MySQL [(none)]> create database if not exists test character set utf8mb3;
ERROR 1115 (42000): Unknown character set: 'utf8mb3'
```

As a walkaround, user expects that after manually creating the schema with utf8mb4, the migrating progress should continue by `IF NOT EXISTS`. But the same error is still here because "Unknown character set" has a higher priority.

**Describe the feature you'd like:**

For the charset and collation that TiDB has not implemented, they should not cause "Unknown character set" error but "Unimplemented character set" error. And "Unimplemented character set" error have lower priority so that `IF NOT EXISTS` can suppress them. In this way migrating progress can continute by manually creating the schema in advance.

**Describe alternatives you've considered:**

migrating tools skip whole schema restoring phase

**Teachability, Documentation, Adoption, Migration Strategy:**

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.