Это зависит от того, какой двигатель вы указали. По умолчанию данные таблицы будут храниться на диске. Если вы укажете механизм MEMORY, данные будут храниться только в памяти.
Должна быть возможность реально найти файлы, которые создаются в файловой системе при создании временных таблиц. После выполнения следующих команд:
CREATE TABLE test.table_myisam (x int) ENGINE=MyISAM;
CREATE TABLE test.table_memory (x int) ENGINE=MEMORY;
CREATE TEMPORARY TABLE test.temp_table_myisam (x int) ENGINE=MyISAM;
CREATE TEMPORARY TABLE test.temp_table_memory (x int) ENGINE=MEMORY;
Затем я проверил каталог: C: \ ProgramData \ MySQL \ MySQL Server 5.5 \ data \ test (в Windows), и были представлены следующие файлы:
table_innodb.frm # Table definition.
table_innodb.MYD # MyISAM table data file.
table_innodb.MYI # MyISAM table index file.
table_memory.frm # No MYD or MYI file for the MEMORY engine.
Временные таблицы хранятся в C: \ Windows \ Temp и имеют необычные имена, но внутренне данные хранятся таким же образом.
#sql9a0_7_d.frm # This is the MyISAM temporary table.
#sql9a0_7_d.MYD # MyISAM data file for temporary table.
#sql9a0_7_d.MYI # MyISAM index file for temporary table.
#sql9a0_7_c.frm # This is the MEMORY engine file. No MYD or MYI.