嵌入式MySQL InnoDB支持并发请求吗?

问题描述:

我打算使用MySQL InnoDB作为嵌入式数据库,然后我发现了doc的限制。它说:嵌入式MySQL InnoDB支持并发请求吗?

InnoDB在嵌入式服务器中不可重入,不能连续或同时用于多个连接。

这是否表示我不能同时使用多个线程访问嵌入式InnoDB?

是的,这意味着你不能将嵌入式InnoDB用于并发请求。

嵌入意味着来自单个应用程序的只有一个连接。 InnoDB引擎作为该应用程序进程的一部分运行。与你如何使用SQLite类似。

如果您需要连接多用户RDBMS,那么根据定义,它不是嵌入式数据库。你需要运行全面的MySQL服务器。但这并不难。

你也应该知道MySQL 8 will retire support for the embedded libmysqld

因此,您可能希望找到不同的嵌入式数据库(SQLite),或者如果您需要多个连接,则可以使用传统的RDBMS服务器。

+0

谢谢Bill!我们的用例需要嵌入式RDBMS,我们的选择是嵌入式MySQL和SQLite。实际上SQLite可以支持多个连接,但是我发现嵌入式InnoDB似乎不能。所以我想知道如果嵌入myisam可以支持多个连接。我注意到,在5.7之后,嵌入式mysql将不被支持,但我认为5.7已经是一个非常高的版本,并且稳定,对我来说没问题。 – pengdu