首先停mysql服务,编辑配置文件my.cnf
1
2
|
$
sudo
stop mysql
$
sudo
vim
/etc/mysql/my
.cnf
|
1
2
3
4
5
6
7
8
9
10
11
|
[client]
default
-
character
-
set
=
utf8
#增加这一行,指定字符集
port
=
3306
socket
=
/
var
/
run
/
mysqld
/
mysqld.sock
.............
[mysqld]
character_set_server
=
utf8
#增加这一行,指定字符集
user
=
mysql
pid
-
file
=
/
var
/
run
/
mysqld
/
mysqld.pid
|
重启服务,字符集就成了UTF-8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
$
sudo
start mysql
$
sudo
mysql -uroot -p
mysql> use root
mysql> show variables like
'%char%'
;
#更改前存在的用户字符集不会改变,以后新建的用户字符集都变成了UTF-8
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir |
/usr/share/mysql/charsets/
|
+--------------------------+----------------------------+
mysql> create database mydb;
mysql> use mydb
mysql> show variables like
'%char%'
;
+--------------------------+----------------------------+
| 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 |
/usr/share/mysql/charsets/
|
+--------------------------+----------------------------+
|