使用mysql选项--unbuffered

时间:2013-09-26 02:55:40

标签: mysql database

有一个名为“unbuffered”的mysql客户端选项和一个非常简单的关于它的行,“在每次查询后刷新缓冲区。”,在mysql手册中。

我的问题是它的用途是什么?

我尝试读取mysql源代码,它可能是“在每次查询后刷新mysql客户端日志/输出缓冲区”选项,但我不确定。

感谢。

1 个答案:

答案 0 :(得分:0)

db的默认行为是在输出任何信息之前缓冲查询。如果您运行一个未提供的查询,则要求mysql以尽可能的方式启动输出。从理论上讲,它只在内存中存储一​​行,因此您可以在不耗尽内存的情况下流式传输大型表。

缺点是你不能同时运行2个无缓冲的查询。缓冲查询将jjst排入第二个,而未缓冲的语句将引发错误。

另一个缺点是你不知道在重复迭代之前剩下多少行。