易安卓使用学习记录:连接mysql时mysql迁移中的汉字乱码问题

358 阅读1分钟

易安卓(E4A)可以采用mysql直连或中间件的形式连接MYSQL数据库。

如果需要更换mysql数据库,在导入表或数据之前,就需要首先把新旧两个数据库的字符集设置为一致(即character_set_database的值相同),如果新旧两个数据库不在同一个mysql服务器,还需要把mysql服务器的默认字符集设置为一致,不然容易出现记录插入或展现的汉字乱码问题。

设置字符集的方式:

1、虽然在建立数据库时选择了新数据库的字符集与原数据库一致,但如果是不同的mysql服务器,服务器字符集设置不同仍可能引起乱码,就是通过SQL语句进行了修改,一旦重启MYSQL服务后,仍然会恢复为mysql服务器原默认值(首先要确认两个数据库的字符集一致即character_set_database的值相同,然后再设置mysql服务器字符集)

查看字符集的示例SQL:show variables like 'character_set%';

设置字符集的示例SQL:SET character_set_server=utf8;

2、在MYSQL配置文件中进行设置可解决乱码问题

以下为linux中的WDCP管理后台中的对mysql配置文件进行的解决方案:

在/www/wdlinux/etc/my.cnf(即mysql的配置文件)中的类别

[client]下添加

default-character-set=utf8

[mysqld]下添加

character-set-server=utf8

*如果原来没有则添加,有的话则修改为与原数据库一致。

添加或修改为与原数据库的服务器一致后,重启MYSQL服务即可解决乱码问题。