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語句中的反引號[`]是用來轉義的