我写了一个脚本来帮助我处理数据库。具体来说,我正在尝试处理磁盘上的文件,并将此工作的结果添加到我的数据库中。我已经复制了下面的代码,但删除了与数据库无关的大部分逻辑,以尽量保持这个问题的广泛性和帮助性。
我使用代码对文件进行操作,并将结果添加到数据库中,用与我正在处理的文件相同的标识符覆盖所有文件。后来,我修改了脚本以忽略已添加到数据库中的文档,现在每当运行脚本时,都会出现错误:pymysql.err.OperationalError: (2006, "MySQL server has gone away (BrokenPipeError(32, 'Broken pipe'))")
服务器似乎拒绝了请求,可能是因为我的代码写得不好?我注意到错误总是发生在文件列表中的同一个位置,这是不变的。如果我重新运行代码,将文件列表替换为仅包含程序崩溃的文件的列表,则它可以正常工作。这使我认为,在发出一定数量的请求之后,数据库就见底了。
我在OS X上使用Python 3和MySQL社区版14.14
代码(去掉与数据库无关的内容):import pymysql
# Stars for user-specific stuff
connection = pymysql.connect(host='localhost',
user='root',
password='*******',
db='*******',
use_unicode=True,
charset="utf8mb4",
)</