MySQL設置UTF8字符

linux修改/etc/my.cnfmysql

win系統修改my.ini文件linux

注意: 5.1版本在mysqld下設置default-character-set=utf8, 5.5的設置變了, 我使用的環境是mysql 5.5sql

[client]
default - character - set =utf8
 
[mysqld]
character - set -server=utf8
init_connect= 'SET NAMES utf8'
 
 
[mysql]
default - character - set =utf8

 修改完成以後, 重啓數據庫, 能夠查看數據庫

mysql> \s
--------------
mysql  Ver 14.14 Distrib 5.5.27, for  Win32 (x86)
 
Connection  id:          33
Current  database :
Current  user :           root@localhost
SSL:                    Not  in  use
Using delimiter:        ;
Server version:         5.5.27 MySQL Community Server (GPL)
Protocol version:       10
Connection :             localhost via TCP/IP
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:               3306
Uptime:                 3 min  53 sec
 
Threads: 1  Questions: 282  Slow queries: 0  Opens: 61  Flush tables: 1  Open  tables: 54  Queries per second  avg : 1.210
--------------

這樣保證鏈接mysql以後, 默認都使用了UTF8編碼ide

也能夠查看全局變量編碼

mysql> SHOW VARIABLES LIKE  'character_set_%' ;
+ --------------------------+---------------------------------------------+
| Variable_name            | Value                                       |
+ --------------------------+---------------------------------------------+
| character_set_client     | utf8                                        |
| character_set_connection | utf8                                        |
| character_set_database   | utf8                                        |
| character_set_filesystem | binary                                       |
| character_set_results    | utf8                                        |
| character_set_server     | utf8                                        |
| character_set_system     | utf8                                        |
| character_sets_dir       | XXX\mysql\share\charsets\ |
+ --------------------------+---------------------------------------------+
8 rows  in  set  (0.00 sec)

 

mysql> SHOW VARIABLES LIKE  'collation_%' ;
+ ----------------------+-----------------+
| Variable_name        | Value           |
+ ----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+ ----------------------+-----------------+
3 rows  in  set  (0.00 sec)

 

已經創建的數據庫和表須要進行修改和更新, 分別對數據庫和表進行, 數據量小能夠考慮導出爲sql語句後修改spa

修改數據庫, 表和字段的sql語法參考以下code

修改數據庫, 以test數據庫爲例orm

mysql> alter  database  `test` character  set  utf8;

 修改表爲utf8, 以book表爲例server

mysql> alter  table  `book` character  set  utf8;

以book表的title字段爲例

mysql> alter  table  `books_book` modify  `title` varchar (100) character  set  utf8;

 其中sql語句中的反引號[`]是用來轉義的

相關文章
相關標籤/搜索