(1) The simplest way to modify is to modify the MySQL My.ini file character Set key value, Ubuntu under the MySQL configuration file is under the /etc/mysql/my.cnf ,
I'm going to copy this file to my /home/username folder and rename it to. my.cnf so that even if the configuration goes wrong, it won't affect the database's normal operation
Such as:
[Client]
Default-character-set = UTF8
[Mysqld]
Character_set_server = UTF8
After the modification, restart the MySQL service,
sudo restart MySQL
Use mysql> SHOW VARIABLES like ' character% ';
found that the database code has been changed to UTF8
(2) Another way to modify the MySQL default character set is to use the MySQL command
- MySQL> SET character_set_client = UTF8;
- MySQL> SET character_set_connection = UTF8;
- MySQL> SET character_set_database = UTF8;
- MySQL> SET character_set_results = UTF8;
- MySQL> SET character_set_server = UTF8;
- MySQL> SET collation_connection = UTF8;
- MySQL> SET collation_database = UTF8;
- MySQL> SET collation_server = utf8;
In general, even if you set the table MySQL default character set is UTF8 and send the query through UTF-8 encoding, you will find that the database is still garbled. The problem is on the connection connection layer. The workaround is to execute the following sentence before sending the query:
- SET NAMES ' UTF8 ';
It is equivalent to the following three-sentence instruction:
- SET character_set_client = UTF8;
- SET character_set_results = UTF8;
- SET character_set_connection = UTF8;
Modifying the MySQL default character set