几天前,我有一个问题很好:
SELECT
id, title, details, filetype, filepath, size, details, location, datetime,
IF(hid=1, 'Anonymous',
(
SELECT name
FROM users
WHERE did = userid
))
AS username
FROM infotable
WHERE ext2!='0'
ORDER BY id DESC
LIMIT 50但是几天前,它开始出现一个错误:
命令不同步;您现在不能运行此命令
我是从PHP页面调用它的,但我也尝试过从MySQL的GUI中将其作为SQL查询运行。它也给出了同样的错误:

当我在googled上搜索时,我发现这可能是由于MySQL到MySQLi更新。我曾多次尝试使用MySQLi编写备用查询,但每次都会出现错误(有时是相同的错误,有时是其他的错误)。
我的问题是:
发布于 2016-02-22 07:13:23
我认为这个堆栈溢出问题与您的查询有关:
这是因为在另一次调用之前,结果并不是完全获取的。PHP文档也有一个解决方案:
发布于 2017-08-08 23:42:45
对于任何可能仍然感兴趣的人来说,我自己也遇到了这个问题,在这个问题上,一个表突然出现了这个错误。在表上运行检查显示它有错误并且崩溃了。在表上运行修复程序,修复错误,并停止在我自己的查询中获取“命令从同步”错误。
发布于 2021-02-19 07:52:19
另一种可能是mysql服务器未能交付结果,但在下一个查询运行之前不会切断连接。
在mysql服务器8.0中发现了这种情况。错误日志显示了排序缓冲区大小的内存不足错误。在增加之后,应用程序中的这些错误就消失了。
https://dba.stackexchange.com/questions/130019
复制相似问题