在数据库里,“Temporary Table(临时表)”的备份方式和普通表不太一样,主要取决于临时表的类型和你用的数据库。下面按常见数据库说明。
CREATE TEMPORARY TABLE tmp_a (id INT);
特点
mysqldump 默认不会备份临时表手动复制到普通表
CREATE TABLE bak_tmp_a AS
SELECT * FROM tmp_a;
然后:
mysqldump -u user -p db bak_tmp_a > bak.sql
#tableSELECT * INTO #tmp FROM t;
✅ 备份方式:
SELECT * INTO dbo.bak_tmp FROM #tmp;
##tableSELECT * INTO ##tmp FROM t;
✅ 同样复制到普通表再备份
CREATE TEMP TABLE tmp_a (id INT);
pg_dump 不备份临时表✅ 备份方式:
CREATE TABLE bak_tmp_a AS TABLE tmp_a;
Oracle 的临时表是结构永久、数据临时
CREATE GLOBAL TEMPORARY TABLE tmp_a (id NUMBER)
ON COMMIT DELETE ROWS;
✅ 结构可备份:
exp / expdp
❌ 数据通常不备份(提交即清)
✅ 临时表不要当长期存储用 ✅ 需要备份的数据:
INSERT INTO 普通表 SELECT * FROM 临时表✅ 自动化示例(MySQL):
CREATE TABLE IF NOT EXISTS bak_tmp_a LIKE tmp_a;
INSERT INTO bak_tmp_a SELECT * FROM tmp_a;
可以告诉我:
我可以给你更精确的脚本或定时方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。