MySQL或MariaDB是否有内存数据库?

sulc1iza  于 2022-11-08  发布在  Mysql
关注(0)|答案(2)|浏览(147)

我正在做单元/集成测试。SQLite不支持RIGHT JOINFULL OUTER JOIN。有没有办法使用完全存储在内存中的MySQL(或MariaDB)?MySQL有MEMORY表引擎,但这可能会在我的测试中产生不一致。
我需要一些替代:内存:我的问题是性能。SQLite数据库内存加快了我的测试过程,但是有些查询与SQLite不兼容。我也不认为如果生产数据库是MariaDB,在SQLite中进行测试是好的做法。

yyyllmsg

yyyllmsg1#

MariaDB具有the MEMORY storage engine
它最适合用于其他表中数据的只读高速缓存,或用于临时工作区。
这听起来非常适合在自动化测试过程中快速设置和拆卸数据库。

yptwkmov

yptwkmov2#

经过几年的研究和测试,我发现解决这个问题的最好方法是使用Docker。更准确地说,是使用tmpfs卷。这样我可以保证数据库不会持久保存在磁盘上,也不会受到I/O阻塞的影响。
对于感兴趣的人,Docker有自己的文档介绍这种类型的卷:https://docs.docker.com/storage/tmpfs/

相关问题