mysql5.6修改字符编码,ERR:Illegal mix of collations for operation 'concat'

1.问题起因:搭建环境初始化mysql的时候看到mysql配置文件[cloent]下有设置编码为default-character-set = utf8,大意误以为是全局配置了,其实还需要在[mysqld]下添加character_set_server = utf8参数的

2.尝试在线处理:

  mysql> show variables like 'collation_%';

  mysql> show variables like 'character_set_%';

  看到编码为:latin1

  便尝试使用set命令修改:set GLOBAL Variable_name=utf8_general_ci;     set GLOBAL Variable_name=utf8; 

  结果在执行存储过程中:call xx_ya_stats_xx_daily(2018-05-18,3); 仍然报错:Illegal mix of collations for operation 'concat'

  最后再查看数据库的编码,自动恢复为latin1

3.个人结论:mysql在初始化时使用latin1字符编码,导致了里面的库表数据都是latin1字符编码,虽然改了全局的编码,但库表数据编码还是没有改到,导致失败。

4.最终解决办法:把数据库备份导出,重新初始化mysql实例,再导入数据,恢复正常。

5.步骤:

  导出:mysqldump -uroot -h'127.0.0.1' -P3306 -pxxx-E -R  db_name > db_name.sql

  修改sql:cat db_name.sql | grep -v "ALTER DATABASE \`db_name\` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;" > db_name_new.sql

  初始化同样的新实例:mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=xxxxx

  设置密码:mysql> grant all privileges on *.* to 'root'@'%' IDENTIFIED BY 'xxxx';

       mysql> flush privileges;

  修改密码:mysqladmin -h127.0.0.1 -uroot -p --port=3336 password "new_passwd"

  开启事件:SET GLOBAL event_scheduler = ON;
  查看事件是否开启:mysql> show variables like 'event_scheduler';

  创建数据库并指定字符编码:mysql> CREATE database db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

  导入数据库:mysql -uroot -h'127.0.0.1' -P3306 -pxxxx db_name < db_name_new.sql

  测试:call xx_ya_stats_xxxx_daily(2018-05-18,3);

  查看编码:

    mysql> show variables like 'collation_%';

    mysql> show variables like 'character_set_%';

mysql5.6修改字符编码,ERR:Illegal mix of collations for operation 'concat'的更多相关文章

  1. Illegal mix of collations for operation 'concat'

    在t_employee表中,练习使用concat函数连接字符串时, mysql> select concat('工号为:',fnumber,'的员工的幸福指数:',fsalary/(fage-2 ...

  2. MySQL Error: Illegal mix of collations for operation 'concat'

    在使用concat连接字符串时出现错误:MySQL Error: Illegal mix of collations for operation 'concat' 原因:字段操作默认为UTF8的编码, ...

  3. Illegal mix of collations for operation 'like' while searching with Ignited-Datatables

    Stack Overflow Questions Developer Jobs Tags Users   Log In Sign Up Join Stack Overflow to learn, sh ...

  4. myslq数据库用union all查询出现 #1271 - Illegal mix of collations for operation 'UNION'

    出现 #1271 - Illegal mix of collations for operation 'UNION' 的原因是两个字符编码不匹配造成的. 我遇到的是  utf8_general_ci ...

  5. mysql 客户端连接报错Illegal mix of collations for operation

    服务端用的是utf-8,客户端工具打开表和视图是会报Illegal mix of collations for operation错误,经排查,可以采用以下语句解决 SET character_set ...

  6. 错误之Illegal mix of collations for operation 'like'

    内容来自博客:https://www.cnblogs.com/install/p/4417527.html MySQL Illegal mix of collations for operation ...

  7. mysql5.5修改字符编码

    因为mysql版本问题,网上各种修改编码的方法都不行,最后找到下面这条,终于解决! [mysqld]下添加: character-set-server=utf8 collation-server=ut ...

  8. mysql提示:Illegal mix of collations for operation ‘UNION’

    http://www.111cn.net/database/mysql/56096.htm show variables like "%char%"; show variables ...

  9. 有关mysql的utf8和utf8mb4,以及Illegal mix of collations for operation 'like'

    参考以下几个帖子: https://www.cnblogs.com/install/p/4417527.html https://blog.csdn.net/Yetmoon/article/detai ...

随机推荐

  1. 第十六篇 make中的路径搜索

     在实际的工程项目中,源文件和头文件都会组织成一定的目录结构,这样也便于项目的管理,前述我们分析的makefile,源文件和头文件大都在当前目录,没有路径搜索的问题,下面我们引入今天的演示程序的目录结 ...

  2. adb安装启动Touch校正软件

    /********************************************************************************* * adb安装启动Touch校正软 ...

  3. windows下perl的安装和脚本的运行

    参考 1.windows下perl的安装和脚本的运行: 2.fddb测试fddb的评估方法: 3.gunplot5.2.4-download: 完

  4. IPM

    #if 0 void xyp2ipmp(cv::Mat& xyp, cv::Mat& ipmp, cv::Mat& xylim, Size& sz){ //xylimi ...

  5. 强连通分量【k 算法、t 算法】

    连通分量就是一个各个顶点能互相达到的图 无向图的连通分量选取任意一个顶点使用DFS遍历即可,遍历完所有顶点所需的DFS的次数就是连通分量的数量 有向图的强连通分量由于是有向的[从A点开始DFS能访问到 ...

  6. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(三)-- Logger

    本篇是在上一篇的基础上添加日志功能,并记录NLog在Asp.Net Core里的使用方法. 第一部分:默认Logger支持 一.project.json添加日志包引用,并在cmd窗口使用 dotnet ...

  7. cacheAsBitmap位图缓存

    使用cacheAsBitmap将缓存显示对象的内部位图表示形式. 此缓存可以提高包含复杂矢量内容的显示对象的性能.此方法适合运用于较多的图片或文字移动,不过也不能太随意乱用,有利必有弊,使用cache ...

  8. 罗技 M558 鼠标维修记录

    罗技 M558 鼠标维修记录 故障现象 按键不灵敏 拆机内部图 前进键 后退键 左键 右键 中键 自定义功能键 使用的是 OMRON 按键,好东西,质量可以. 但毕竟是机械的东西,还是有老化,用万用表 ...

  9. Keepalived+HAProxy实现RabbtiMQ高可用的负载均衡

    HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案,包括Twitter,Reddit,StackOverflow,GitHub在 ...

  10. ZStack深度试用:部署、架构与网络及其与OpenStack的对比

    摘要:本文是开源IaaS软件ZStack的深度试用报告,分别从部署.架构和网络三个层面分享作者的试用体验,并与OpenStack进行简单的对比,文章最后也对ZStack的改进方向提出了自己的思考.(转 ...