我向 Mysqlsd 发出多个请求,对于特定用户,我收到此错误
MySQLdb._exceptions.OperationalError: (2013, 'Lost connection to MySQL server during query')
在线出现此错误
cursor.execute('Select * from process WHERE email=%s ORDER BY timestamp DESC LIMIT 20', ("tommy345a@outlook.com",))
但是当我对不同的用户进行相同的查询时,没有问题。
cursor.execute('Select * from process WHERE email=%s ORDER BY timestamp DESC LIMIT 20', ("cafahxxxx@gmail.com",))
页面加载正确。
下面给出了有关 MySQL 的更多详细信息
#modules used
from flask_mysqldb import MySQL
import MySQLdb.cursors
#setup
app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_USER'] = 'myusername'
app.config['MYSQL_PASSWORD'] = 'mypassword'
app.config['MYSQL_DB'] = 'my_db'
mysql = MySQL(app)
#extract of requests made to db
@app.route('/myhome', methods=['GET', 'POST'])
def home_page():
email = "tommy345a@outlook.com"
cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
cursor.execute('SELECT * FROM mail WHERE email = %s', (email,))
completed = cursor.fetchone()
cursor.execute('SELECT sum(transaction) FROM transactions WHERE email=%s', (email,))
points = cursor.fetchone()
cursor.execute('Select * from process WHERE email=%s ORDER BY timestamp DESC LIMIT 20', (email,))
transactions = cursor.fetchall()
我将在此处发布来自 Mysql 的进程表,以便您找出问题发生在红色标记用户而不是绿色标记用户的原因。
此外,这可能是数据包大小的问题,但直到昨天我还没有遇到任何问题(用户 tommy 下有超过 11 个条目。我删除了 6 行,但仍然无法正常工作)。另外,如果您认为这是由于数据包大小造成的,请告诉我如何在不增加数据包大小的情况下解决它,因为我在共享网络上并且托管服务提供商不允许我增加数据包大小限制。