服务器数据库编码格式问题解决方案
服务器数据库编码格式问题
最近做项目在部署到阿里云服务器上之后出现了两个问题:
1、乱码问题。
2、ajax的php处理页面里面利用json_encode()函数返回json数据,则数据库返回的数据只能是UTF8,如果是gbk则json也无法返回。
发现是数据库编码格式问题,网站使用的编码格式为UTF8,数据库的编码格式调为了UTF8,但是character_set_server的值还是gbk。
查看数据库编码:
在mysql命令行里面输入:show variables like 'character%';
所以还是有乱码存在。
于是从网上找了解决方法:
在mysql命令行输入:set character_set_server=utf8;
OK修改成功!返回数据也正常,但是当关闭数据库服务,重新启动,发现set character_set_server又变回了gbk。
所以这个方法只能暂时性的解决。
最终找到了一个能用的不是特别好的解决方法是在执行SQL语句之前,先执行该SQL语句即可:
$conn->query('SET character_set_client = utf8;'); $conn->query('SET character_set_results = utf8;'); $conn->query('SET character_set_connection = utf8;');
这种解决方法个人感觉不是很好,每次执行的次数太多,如果能修改服务器数据库的编码格式最好。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
mysql中insert与select的嵌套使用解决组合字段插入问题
本节主要介绍了mysql中insert与select的嵌套使用解决组合字段插入问题,需要的朋友可以参考下2014-07-07MySQL对window函数执行sum函数可能出现的一个Bug
这篇文章主要给大家介绍了关于MySQL对window函数执行sum函数可能出现的一个Bug,文中通过示例代码介绍的非常详细,对大家的学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧2020-07-07MySql 5.7.20安装及data和my.ini文件的配置
本文通过图文并茂的形式给大家介绍了MySql 5.7.20安装及data和my.ini文件的配置方法,本文给大家介绍的非常详细,需要的朋友参考下吧2017-11-11mysql-8.0.15-winx64 解压版安装教程及退出的三种方式
本文通过图文并茂的形式给大家介绍了mysql-8.0.15-winx64 解压版安装,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下2019-04-04
最新评论