mysql ошибка репликации: усечено неверное значение DOUBLE - PullRequest
0 голосов
/ 20 июня 2020

Я использую репликацию mysql master-slave для резервного копирования базы данных, но через несколько дней подчиненный сервер получил следующую ошибку:

Last_SQL_Errno: 1292
Last_SQL_Error: Error 'Truncated incorrect DOUBLE value: '29''' on query. Default database: 'my_database'. Query: 'UPDATE `a_table`  SET `name`='xxx',`phone`='xxx',`mch_key`='xxx',`switch`='1',`update_time`=1592612052  WHERE  `id` = '29\'''

Кажется, что «значение идентификатора столбца 29» равно не корректно завершением двумя символами одинарной кавычки. Но я не знаю, как это случилось. Как я могу отладить эту проблему?

mysql версия: ведущее и ведомое устройства имеют одинаковую версию 5.7.30.

1 Ответ

0 голосов
/ 20 июня 2020

«Усеченное неверное значение DOUBLE» - это сообщение об ошибке, вводящее в заблуждение в MySQL. Я столкнулся с этой проблемой, и это сообщение SO помогло мне решить мою проблему.

В моем случае, хотя значение в предложении where выглядело как число, оно было строкой и вводило кавычки для значения в предложении where решили проблему, поскольку на самом деле это был varchar.

Я надеюсь, что содержимое сообщения SO, связанного выше (ответы и комментарии разных пользователей ), будут помогите найти причину вашей проблемы! Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...