MySQL 8.0 FAQ: MySQL Chinese, Japanese, and Korean Character Sets When a client connects, it sends to the server the name of the character set that it wants to use. The server uses the name to set the  character_set_client , character_set_results , and  character_set_connection  system variables. In effect, the server performs a  SET NAMES  operation using the character set name. The effect of this is that you cannot control the client character set by starting  mysqld  with  -- character-set-server=utf8 . However, some Asian customers prefer the MySQL 4.0 behavior. To make it possible to retain this behavior, we added a  mysqld  switch,  --character- set-client-handshake , which can be turned off with  --skip-character-set-client- handshake . If you start  mysqld  with  --skip-character-set-client-handshake , then, when a client connects, it sends to the server the name of the character set that it wants to use. However,  the server ignores this request from the client . By way of example, suppose that your favorite server character set is  latin1 . Suppose further that the client uses  utf8  because this is what the client’s operating system supports. Start the server with  latin1  as its default character set: And then start the client with the default character set  utf8 : The resulting settings can be seen by viewing the output of  SHOW VARIABLES : Now stop the client, and stop the server using  mysqladmin . Then start the server again, but this time tell it to skip the handshake like so: Start the client with  utf8  once again as the default character set, then display the resulting settings: mysqld --character-set-server=utf8 --skip-character-set-client-handshake mysql --default-character-set=utf8 mysqld --character-set-server=latin1 mysql>  SHOW VARIABLES LIKE ’char%’; mysql>  SHOW VARIABLES LIKE ’char%’; +--------------------------+----------------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/local/mysql/share/mysql/charsets/ | +--------------------------+----------------------------------------+ +--------------------------+----------------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/local/mysql/share/mysql/charsets/ | +--------------------------+----------------------------------------+ 5265