The client tries to connect with a multibyte-minimum character set (utf16, utf32, ucs2), which MySQL blocks for client sessions added in 8.0.33.
MySQL Error 2074 (CR_INVALID_CLIENT_CHARSET) means the client is using a character set whose minimum character length exceeds one byte. Switch the connection to a single-byte-minimum set such as utf8mb4 or latin1, then reconnect to resolve the issue.
%s' character set is having more than 1 byte minimum character length, which cannot be used as a client character set. Please use any of the single byte minimum ones, e.g. utf8mb4, latin1 etc. CR_INVALID_CLIENT_CHARSET was added in 8.0.33.
Error 2074 is thrown by the MySQL client library when it detects that the requested client character set has a minimum character length greater than one byte. Examples include utf16, utf32, and ucs2.
Starting with MySQL 8.0.33, these multibyte-minimum sets are disallowed for client sessions to avoid protocol issues.
The server rejects the handshake and the client terminates with CR_INVALID_CLIENT_CHARSET.
The primary trigger is a connection string, driver setting, or SET NAMES statement that specifies utf16, utf32, or another multibyte-minimum set as the client character set.
Older client libraries bundled with frameworks may default to utf16 on Windows. Using mysqldump or mysql CLI with --default-character-set=utf16 also raises the error.
Choose a supported single-byte-minimum character set like utf8mb4 or latin1.
Update the connection string, driver configuration, or environment variable and reconnect.
If you must store data in utf16, keep utf8mb4 as the client set and rely on column or COLLATE definitions for storage encoding.
CLI tools: Replace --default-character-set=utf16 with --default-character-set=utf8mb4 in scripts.
JDBC: Change jdbc:mysql://host/db?characterEncoding=utf16 to characterEncoding=utf8mb4.
Python MySQL Connector: Pass charset='utf8mb4' instead of charset='utf16'.
Standardize on utf8mb4 in code repositories and CI pipelines.
Audit connection utilities for hard-coded charsets during onboarding.
Automate checks with a linter or Galaxy’s query review hooks to block disallowed charsets before merges.
Error 2059: AUTH_PLUGIN_CANNOT_LOAD occurs when the client uses an unsupported authentication plugin; fix by installing or changing the plugin.
Error 2019: CR_OPTION_MULTI_STATEMENTS is raised when the client disables multi-statement support. Enable the option in the connection string.
.
Yes. Keep the client charset as utf8mb4 and define utf16 collations on specific columns or rely on utf8mb4 to store any Unicode character.
No. It only blocks new connections that request an invalid client charset. Existing sessions established before upgrade remain intact until they reconnect.
utf8mb4 supports the full Unicode range, has a 1-byte minimum length, and is recommended by MySQL. It avoids CR_INVALID_CLIENT_CHARSET and most encoding pitfalls.
Galaxy’s SQL editor flags disallowed SET NAMES statements and enforces utf8mb4 in connection settings, preventing invalid charsets from reaching production.