При обновлении записи в таблице большинство строк работают нормально, а некоторые - нет. Я предполагаю, что это связано с длиной строки. Например, строки «12345678» и «1234567890» работают, а строка «123456789» - нет. Вместо правильного обновления записи выдается
OperationalError: 2055: Потерянное соединение с MySQL сервером на '...: 3306', системная ошибка: 60 Тайм-аут операции
Мой сценарий использует:
Python 3.7.6
mysql-connector-python 8.0.19
БД работает в следующей системе:
Server: Localhost via UNIX socket
Server type: MariaDB
Server connection: SSL is not being used Documentation
Server version: 10.4.12-MariaDB-1:10.4.12+maria~bionic - mariadb.org binary distribution
Protocol version: 10
Server charset: UTF-8 Unicode (utf8mb4)
Apache
Database client version: libmysql - mysqlnd 5.0.12-dev
Код, который не работает:
mydb = mysql.connector.connect(...)
cursor = mydb.cursor()
cursor.execute('UPDATE table_1 SET name = "123456789" WHERE id = 1;')
CREATE TABLE table_1 (
id int(9) unsigned NOT NULL,
... name tinytext DEFAULT NULL,
... PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4