如果我的表大小为 500GB,那么临时文件夹应该有多大才能更改表信息?我将在 my.cnf 中配置临时文件夹,在此示例中,我有 64 GB 的物理内存。
答案1
根据手册中的“性能和空间要求”部分,临时文件夹的大小似乎无关紧要,因为ALTER
空间取自原始表所在的同一位置:https://dev.mysql.com/doc/refman/8.0/en/alter-table.html
在原始表的数据库目录中创建该表的临时副本
和
对于 InnoDB 表,使用 COPY 算法对位于共享表空间可以增加表空间使用的空间量。此类操作需要的额外空间与表中的数据加上索引一样多。
...
ALTER TABLE with DISCARD ... PARTITION ... TABLESPACE or IMPORT ... PARTITION ... TABLESPACE
不创建任何临时表或临时分区文件。
...