CDH CM修改配置文件Data truncation: Incorrect string value: ‘\xE5\xB7\xB2\xE6\x9B\xB4...‘ for column ‘MESSA

Data truncation: Incorrect string value: '\xE5\xB7\xB2\xE6\x9B\xB4...' for column 'MESSAGE' at row 1

cloudera server 端日志:

Caused by: java.sql.BatchUpdateException: Incorrect string value: '\xE5\xB7\xB2\xE6\x9B\xB4...' for column 'VALUE' at row 1
        at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:2054)
        at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1467)
        at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
        at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.performExecution(BatchingBatch.java:110)
        ... 98 more
Caused by: java.sql.SQLException: Incorrect string value: '\xE5\xB7\xB2\xE6\x9B\xB4...' for column 'VALUE' at row 1
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4096)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2734)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2155)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2458)
        at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:2006)
        ... 101 more

问题出现原因:

CM元数据库 字符集不兼容 字段 VALUE  MESSAGE  无法写入对应的值。

解决办法:

先修改元数据库编码格式为utf8,如果修改后没有效果,继续按照如下修改

 SHOW VARIABLES LIKE '%character_set_%';

修改元数据库。cm_server为源数据库名。

use cm_server;
alter table CONFIGS         modify `VALUE` longtext character set utf8 collate utf8_general_ci; 
alter table CONFIGS_AUD     modify `VALUE` longtext character set utf8 collate utf8_general_ci; 
alter table GLOBAL_SETTINGS modify `VALUE` longtext character set utf8 collate utf8_general_ci; 
alter table USER_SETTINGS   modify `VALUE` longtext character set utf8 collate utf8_general_ci; 
alter table AUDITS modify `MESSAGE` longtext character set utf8 collate utf8_general_ci; 
alter table REVISIONS modify `MESSAGE` longtext character set utf8 collate utf8_general_ci;

posted @ 2021-07-07 19:31  疯码牛Pro  阅读(593)  评论(0编辑  收藏  举报