RT!
在5.1.50上使用
create database if not exists server_info default character set utf8 collate utf8_general_ci;
建立的库。手动插入的数据。导出一个xxx.sql(文件打开不乱码!)到另外一个服务器上同样create database if not exists server_info default character set utf8 collate utf8_general_ci;
而后将导出的 sql倒回。结果就是不行!!!后来用
mysql -uroot -p --default-character-set=utf8 -f < xxx.sql;还是汉字乱码!!!求问为什么?+--------------------------+----------------------------+
| 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 | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
在5.1.50上使用
create database if not exists server_info default character set utf8 collate utf8_general_ci;
建立的库。手动插入的数据。导出一个xxx.sql(文件打开不乱码!)到另外一个服务器上同样create database if not exists server_info default character set utf8 collate utf8_general_ci;
而后将导出的 sql倒回。结果就是不行!!!后来用
mysql -uroot -p --default-character-set=utf8 -f < xxx.sql;还是汉字乱码!!!求问为什么?+--------------------------+----------------------------+
| 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 | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
解决方案 »
- 求救。。C++中执行mysql 插入更新语句后连接不上
- mysql 如何启用InnoDB引擎?
- 循环向SQL数据库插入上万条记录,探讨其效率问题
- mysql在那里可以管理trigger呢?insert的trigger在mysql中应该如何写呢?
- 目前开源的数据库只有mysql和postgresql么?
- 向mysql插入数据时,应该将哪些字符转换
- 高分求教 关于mysql的多表性能 300分
- 数据库多级分类如何设计?可以扩展无限级别的
- 问一下大神怎么把这两条查询语句合并
- 百万级联表速度优化
- ACL设计,查询语句求优化
- 在对数据表新增字段时,如何做到如果该表有该字段就不增加字段而不是抛出duplicate column
在mysql>
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8;重新来了一遍就可以了。就是不知道,会对系统中其他库产生什么影响。。
default-character-set=UTF8重新启动服务。
囧。。
另外可以利用mysql server instance config wizard设置字符集,\bin\MySQLInstanceConfig.exe
mysql -uroot -p -e 'set names utf8;use server_info;show tables;'添加上粗体的这一句。在/etc/my.cnf中已经有了
character_set_server=utf8
character_set_client=utf8
#character_set_connection=utf8
#character_set_database = utf8;
#character_set_results=UTF8那两行红字的注释一旦打开就报错!!!