mysql - 如何让 MySQL 数据库完全在内存中运行?

我注意到我的数据库服务器支持内存数据库引擎。我想让一个我已经运行 InnoDB 的数据库完全在内存中运行以提高性能。

我该怎么做?我探索了 PHPMyAdmin,但找不到“更改引擎”功能。

最佳答案

假设您了解评论中提到的使用 MEMORY 引擎的后果,并且 here ,以及您可以通过搜索找到的其他一些内容(无交易安全、锁定问题等) - 您可以按照以下方式进行操作:

MEMORY 表的存储方式与 InnoDB 不同,因此您需要使用导出/导入策略。首先使用 SELECT * FROM tablename INTO OUTFILE 'table_filename' 将每个表单独转储到文件中。创建 MEMORY 数据库并使用以下语法重新创建您将使用的表:CREATE TABLE tablename (...) ENGINE = MEMORY;。然后,您可以为每个表使用 LOAD DATA INFILE 'table_filename' INTO TABLE tablename 导入数据。

https://stackoverflow.com/questions/10692398/

相关文章:

mysql - ON UPDATE RESTRICT 有什么作用?

php - 将大量点击记录到 MySQL 数据库中的最佳实践

mysql - 如何在 MySQL 的命令行中显示变量的值?

php - 一次查询 MySQL 插入多行

php - Doctrine2 迁移向下迁移并从浏览器而不是命令行迁移

mysql - 如何同步开发和生产数据库

mysql - 错误 2002 (HY000) : Can't connect to local M

sql - BIGINT(8) 是 MySQL 可以存储的最大整数吗?

php - Laravel OrderBy 关系计数

php - MySQL 查询随机滞后