有两个Python脚本。脚本A不断读取数据库中的记录,然后发送消息。脚本B不断查找数据并将其插入数据库。它们都保持运行而不会被终止。
如果数据库中有未处理的记录,则在脚本A启动时,脚本A可以查看并正确处理它们。脚本A现在处于空闲状态。一段时间后,脚本B插入一些新记录。但是,脚本A无法看到这些新添加的记录。
在脚本B中,插入记录后,我具有connection.commit()。记录在数据库中。
脚本A在以下情况下无法正常工作
:persist = PersistentDB(pymysql, host=DB_HOST, port=DB_PORT, user=DB_USERNAME, passwd=DB_PASSWORD, db=DB_DATABASE, charset='utf8mb4')
while True:
connection = persist.connection()
cursor = connection.cursor()
cursor.exec("SELECT...")
脚本A在以下情况下可以正常工作
:while True:
persist = PersistentDB(pymysql, host=DB_HOST, port=DB_PORT, user=DB_USERNAME, passwd=DB_PASSWORD, db=DB_DATABASE, charset='utf8mb4')
connection = persist.connection()
cursor = connection.cursor()
cursor.exec("SELECT...")
我真的应该以这种方式使用PersistentDB吗?每次我声明它时,它似乎都会覆盖持久连接池。请告诉我什么是正确的方法。
P.S。 使用Python 3,pymysql和DBUtils连接到MySQL 8