首页 > 解决方案 > ALTER TABLE - 写入通信数据包时出错

问题描述

当我尝试执行查询时:

ALTER TABLE table ADD COLUMN column TEXT NOT NULL

连接处于无限循环(锁定表)并在错误日志中给出此错误:

[警告] Aborted connection 1475 to db: 'unconnected' user: 'root' host: 'localhost' (写入通信包时出错)

因此,我尝试max_allowed_packet按照某些主题中的建议将其增加到 10000M,并且它只执行一个查询。下一个(不久之后)再次阻止了一切。my.ini看起来是这样的:

[mysqld]
datadir=C:/Program Files/MariaDB 10.3/data
port=3306
innodb_buffer_pool_size=2033M
max_allowed_packet=10000M
[client]
port=3306
plugin-dir=C:/Program Files/MariaDB 10.3/lib/plugin

我在 Windows 环境中使用 MariaDB,并尝试使用 pymysql (Python) 执行查询:

cur.execute("ALTER TABLE table ADD COLUMN column TEXT NOT NULL")

有谁知道这个问题的解决方案?

标签: pythonmysqlmariadbpymysql

解决方案


的限制max_allowed_packet只有1G。使用该值时是否出现错误?

参考

同时,在

ALTER TABLE table ADD COLUMN column TEXT NOT NULL

我希望表名不是table,列名不是column


推荐阅读