mysql 5.0数据库乱码,Mysql 5 数据库 中文乱码问题的解决

Mysql 5 数据库 中文乱码问题的解决

6ee5639a40442445944d63b514b2dd02.png

[root@localhost plugins]# /mysql -hlocalhost -ueygle -p eygle

Enter password:

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 1693469

Server version: 5.0.45 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show variables like '%char%';

+--------------------------+----------------------------------+

| Variable_name            | Value                            |

+--------------------------+----------------------------------+

| character_set_client     | latin1                           |

| character_set_connection | latin1                           |

| character_set_database   | latin1                          |

| character_set_filesystem | binary                           |

| character_set_results    | latin1                           |

| character_set_server     | latin1                           |

| character_set_system     | utf8                             |

| character_sets_dir       | /opt/mysql/share/mysql/charsets/ |

+--------------------------+----------------------------------+

8 rows in set (0.00 sec)现在的字符集是utf8,但是由于原来是latin1的字符集,我使用latin1进行导出:

mysqldump -hlocalhost -ueygle -p --default-character-set=latin1 blog >blog.sql

这样导出之后,如果打开看,正文应当都是正常显示才对,然后更改字符集,将所有表的字符集设置改为utf8,在vim中的命令是:

:%s/latin1/utf8/g

再执行导入操作:

mysql -hlocalhost -ueygle -p eyglenew < blog.sql

这样我终于看到了久违的,正确的中文,现在的数据库字符集看起来是这个样子的:

mysql> show variables like '%char%';

+--------------------------+----------------------------------+

| Variable_name            | Value                            |

+--------------------------+----------------------------------+

| character_set_client     | latin1                           |

| character_set_connection | latin1                           |

|character_set_database   | utf8                             |

| character_set_filesystem | binary                           |

| character_set_results    | latin1                           |

| character_set_server     | latin1                           |

| character_set_system     | utf8                           |

| character_sets_dir       | /opt/mysql/share/mysql/charsets/ |

+--------------------------+----------------------------------+

8 rows in set (0.00 sec)

记录一下,供遇到此类情况的朋友参考。

-The End-

By eygle on 2010-05-25 11:19 |

Comments (1) |

FAQ |

Web | 2546 |

1 Comment

最近也遇到一个类似的CASE:

mysqldump出来的SQL文件,使用了GBK编码,但是再用mysql 导入数据时,执行到某个表时,报SQL 语法错误。

但是在Windows平台下打开文件,文件格式正确。

后来修改了/etc/my.cnf文件,在[mysql]下边添加了

default_character_set=gbk

后保存,然后重启mysql service,再导入数据时,可以正常导入。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值