【问题标题】:flexview illegal mix of collations errorflexview 非法混合排序规则错误
【发布时间】:2013-08-01 21:42:40
【问题描述】:

我尝试设置 flexview 以支持 MySQL 中的物化视图,但是发生了这个错误:

PHP Strict standards:  Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in /usr/share/php/Console/Getopt.php on line 109
PHP Stack trace:
PHP   1. {main}() /home/arash/application/flexviews/consumer/setup_flexcdc.php:0
PHP   2. get_commandline() /home/arash/application/flexviews/consumer/setup_flexcdc.php:29
PHP   3. Console_Getopt->getopt2() /home/arash/application/flexviews/consumer/setup_flexcdc.php:14
PHP   4. Console_Getopt->doGetopt() /usr/share/php/Console/Getopt.php:75
PHP Strict standards:  Non-static method PEAR::isError() should not be called statically in /home/arash/application/flexviews/consumer/setup_flexcdc.php on line 15
PHP Stack trace:
PHP   1. {main}() /home/arash/application/flexviews/consumer/setup_flexcdc.php:0
PHP   2. get_commandline() /home/arash/application/flexviews/consumer/setup_flexcdc.php:29
setup starting
SQL_ERROR IN STATEMENT:
DELETE bcs.* FROM `binlog_consumer_status` bcs where exec_master_log_pos >= master_log_size and server_id=1 AND master_log_file not in (select log_name from log_list)
DELETE bcs.* FROM `binlog_consumer_status` bcs where exec_master_log_pos >= master_log_size and server_id=1 AND master_log_file not in (select log_name from log_list)
Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '='

为什么会出现这个错误?

【问题讨论】:

    标签: mysql materialized-views


    【解决方案1】:

    看起来您的数据库使用 UTF8 作为客户端或服务器字符集,但 flexcdc 创建的临时表使用的是 latin1。

    您可以尝试更改创建 log_list 的 CREATE TEMPORARY TABLE 中的字符集。

    【讨论】:

    • 如何更改 CREATE TEMPORARY TABLE 中的字符集?在哪里?
    • github 上最新版本的 Flexviews 已经完整修复了这个问题。
    猜你喜欢
    • 1970-01-01
    • 2010-11-03
    • 2017-10-19
    • 1970-01-01
    • 1970-01-01
    • 2010-11-17
    • 2015-04-06
    • 2015-01-29
    相关资源
    最近更新 更多