ubuntu中设置mysql的字符集

数据库中中文乱码解决:

设置server级,db级,table级使用的字符集为utf8。

设置方法:

查看mysql字符集状态:

先使用客户端工具mysql登录: 

[plain]  view plain copy
  1. mysql> status  
  2. --------------  
  3. mysql  Ver 14.14 Distrib 5.5.29, for linux2.6 (i686) using readline 5.1  
  4.   
  5. Connection id:      2  
  6. Current database:     
  7. Current user:       root@localhost  
  8. SSL:            Not in use  
  9. Current pager:      stdout  
  10. Using outfile:      ''  
  11. Using delimiter:    ;  
  12. Server version:     5.5.29-log MySQL Community Server (GPL)  
  13. Protocol version:   10  
  14. Connection:     Localhost via UNIX socket  
  15. Server characterset:    utf8  
  16. Db     characterset:    utf8  
  17. Client characterset:    utf8  
  18. Conn.  characterset:    utf8  
  19. UNIX socket:        /tmp/mysql.sock  
  20. Uptime:         1 min 10 sec  

设置server级字符集:

编辑 /etc/my.cnf文件

[java]  view plain copy
  1. [client]  
  2. default-character-set=utf8  
  3.   
  4. [mysqld]  
  5. character_set_server=utf8  
注:[mysqld]处也可使用default-character-set=utf8,如果启动mysql服务出错的话,就使用character_set_server=utf8。


设置db级字符集:

创建数据库是指定:

mysql> create database mytest character set utf8;

修改已有数据库字符集:

[plain]  view plain copy
  1. mysql> alter database character set utf8;  


设置表字符集:

创建表时指定:

[java]  view plain copy
  1. mysql> create table mytable(id int auto_increment primary key) character set utf8;  

修改表的字符集:

[plain]  view plain copy
  1. mysql> alter table mytable character set latin1;  


如果数据中要存放中文字符, 推荐使用utf8。

还有就是修改字符集只对之后添加的数据有效,已存在的数据不会改变

你可能感兴趣的:(ubuntu中设置mysql的字符集)