Kru*_*ger 12 mysql memory-table
max_heap_table_size限制为16 mb,那么我该如何更改此值以及在哪里?
chr*_*ann 17
我很确定默认情况下max_heap_table_size设置为大约16MB.所以我首先通过运行查询来检查它的设置:
select @@max_heap_table_size;
然后您可以运行查询以将其设置得更高:
set @@max_heap_table_size=NUMBER_OF_BYTES;
如果您无法更改堆值,请尝试此操作
将其添加到mysql/etc/my.cnf
[mysqld]
tmp_table_size=2G
max_heap_table_size=2G
Run Code Online (Sandbox Code Playgroud)
这将涵盖mysql重启.要立即在mysqld中设置这些值而不重新启动运行:
SET GLOBAL tmp_table_size = 1024 * 1024 * 1024 * 2;
SET GLOBAL max_heap_table_size = 1024 * 1024 * 1024 * 2;
Run Code Online (Sandbox Code Playgroud)
如果您正在检查上述变量
SELECT @@max_heap_table_size;
Run Code Online (Sandbox Code Playgroud)
您可能会注意到它们在SET GLOBAL...声明后似乎没有变化.这是因为这些设置仅适用于与服务器的新连接.建立新连接,您将看到值更新.