我正在使用MySQL MEMORY引擎来创建用于最小化I / O的表 由于它将数据存储在RAM中,我希望磁盘上的另一个数据副本具有持久性。
所以我的问题是, 有没有办法在磁盘上写入MEMORY表的数据?
答案 0 :(得分:0)
INSERT INTO disk_table
SELECT * FROM ram_table
或
CREATE TABLE t (i INT) ENGINE = MEMORY;
ALTER TABLE t ENGINE = INNODB;
答案 1 :(得分:0)
将您的表存储在InnoDB中,然后使用
--innodb-flush-log-at-trx-commit=0
表示非持久模式。您将在磁盘上维护数据,但仍然具有相对较高的性能,因为提交不会立即同步。
我至少会测试这个场景,看看它是否足够快。