我们通过 performance_schema 观察了 memory 引擎的内存分配,由此推算了内部临时表的内存占用情况。MySQL 在其他元数据中,诸如 information_schema.INNODB_TEMP_TABLE_INFO 中,并不展示内部临时表的信息,如图:另外值得注意的是:memory 引擎会多划分出不少空间,比如本例中我们的数据是 300025 行 * 4...
如何在mysql中把查询结果输出到临时表中
if (select object_ID('tempdb..#BaseInfoFK')) >0 drop table #BaseInfoFK
select a.* into #BaseInfoFK from (select * from table)a#BaseInfoFK是临时表的名一定要加#2016-09-24
我们通过 performance_schema 观察了 memory 引擎的内存分配,由此推算了内部临时表的内存占用情况。
MySQL 在其他元数据中,诸如 information_schema.INNODB_TEMP_TABLE_INFO 中,并不展示内部临时表的信息,如图:
另外值得注意的是:memory 引擎会多划分出不少空间,比如本例中我们的数据是 300025 行 * 4 字节 =~ 1.2M,而引擎分出了 4M 多的内存来进行存储。
因此如果进行估算时,需要将数据量乘以一个较大的系数,才能准确估算。
2020-09-08