- Web Development with Django Cookbook(Second Edition)
- Aidas Bendoraitis
- 254字
- 2021-07-23 14:31:59
Setting UTF-8 as the default encoding for MySQL configuration
MySQL is the most popular open source database. In this recipe, I will tell you how to set UTF-8 as the default encoding for it. Note that if you don't set this encoding in the database configuration, you might get into a situation where LATIN1 is used by default with your UTF-8 encoded data. This will lead to database errors whenever symbols such as € are used. Also, this recipe will save you from the difficulties of converting the database data from LATIN1 to UTF-8, especially when you have some tables encoded in LATIN1 and others in UTF-8.
Getting ready
Make sure that the MySQL database management system and the MySQLdb Python module are installed and you are using the MySQL engine in your project's settings.
How to do it…
Open the /etc/mysql/my.cnf
MySQL configuration file in your favorite editor and ensure that the following settings are set in the sections: [client]
, [mysql]
, and [mysqld]
, as follows:
# /etc/mysql/my.cnf
[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8
If any of the sections don't exist, create them in the file. Then, restart MySQL in your command-line tool, as follows:
$ /etc/init.d/mysql restart
How it works…
Now, whenever you create a new MySQL database, the databases and all their tables will be set in UTF-8 encoding by default.
Don't forget to set this in all computers where your project is developed or published.
- DB2 V9權威指南
- Mastering Concurrency Programming with Java 8
- JavaScript百煉成仙
- 算法大爆炸:面試通關步步為營
- PyTorch自然語言處理入門與實戰
- Servlet/JSP深入詳解
- Groovy for Domain:specific Languages(Second Edition)
- INSTANT OpenNMS Starter
- Oracle從入門到精通(第5版)
- R Deep Learning Cookbook
- Visual C#.NET程序設計
- 劍指大數據:企業級數據倉庫項目實戰(在線教育版)
- Microsoft Azure Storage Essentials
- Mastering Akka
- Qlik Sense? Cookbook