- 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.
- AngularJS Testing Cookbook
- INSTANT OpenCV Starter
- GeoServer Cookbook
- 騰訊iOS測試實踐
- .NET 4.0面向對象編程漫談:基礎篇
- C語言程序設計
- 深入理解Java7:核心技術與最佳實踐
- Learning Python Design Patterns(Second Edition)
- PySide GUI Application Development(Second Edition)
- 零基礎學單片機C語言程序設計
- 深入理解C指針
- R語言數據可視化:科技圖表繪制
- 大學計算機基礎
- Mastering Gephi Network Visualization
- Puppet:Mastering Infrastructure Automation