错误如题所示,具体的情况如下:
mysql> source /script/shell/do_sql.sql ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 Query OK, 1 row affected (0.03 sec) ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 Query OK, 1 row affected (0.05 sec) ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 Query OK, 1 row affected (0.08 sec) ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s tot...' for column 'time' at row 1 ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 Query OK, 1 row affected (0.11 sec) ERROR 1366 (HY000): Incorrect string value: '\xB5s avg...' for column 'time' at row 1 mysql>
造成该问题一般发生在向MySQL中录入包含中文的数据的时候,原因则是:字符集。
查看一下当前数据库的字符集与编码的设定
mysql> status; -------------- mysql Ver 14.14 Distrib 5.7.17-11, for Linux (x86_64) using 6.2 Connection id: 65 Current database: Current user: root@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.17-11 Percona Server (GPL), Release 11, Revision f60191c Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: latin1 Db characterset: latin1 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /var/lib/mysql/mysql.sock Uptime: 42 min 55 sec Threads: 1 Questions: 366 Slow queries: 0 Opens: 163 Flush tables: 1 Open tables: 121 Queries per second avg: 0.142 -------------- mysql> mysql> show variables like 'character_set_database' -> ; +------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | character_set_database | latin1 | +------------------------+--------+ 1 row in set (0.00 sec) mysql> mysql> show create table adamhuan.slow_sql_details\G *************************** 1. row *************************** Table: slow_sql_details Create Table: CREATE TABLE `slow_sql_details` ( `id` int(43) NOT NULL AUTO_INCREMENT, `count` longtext, `time` longtext, `lock_time` longtext, `row_sent` longtext, `row_examined` longtext, `database_name` longtext, `users` longtext, `query_sample` longtext, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8 1 row in set (0.00 sec) mysql>
临时改变数据库的编码格式:
mysql> set names gbk; Query OK, 0 rows affected (0.00 sec) mysql>
然后,再插入就没问题了:
mysql> source /script/shell/do_sql.sql Query OK, 1 row affected (0.04 sec) Query OK, 1 row affected (0.14 sec) Query OK, 1 row affected (0.11 sec) Query OK, 1 row affected (0.07 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.08 sec) Query OK, 1 row affected (0.07 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.11 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.08 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.11 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.07 sec) Query OK, 1 row affected (0.12 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.05 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.11 sec) Query OK, 1 row affected (0.07 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.07 sec) Query OK, 1 row affected (0.06 sec) Query OK, 1 row affected (0.06 sec) mysql>
————————————————
Done。