mysql如何清空数据表的数据,不删除数据表?
需求背景,我需要部署一个服务到北美市场,独立部署即可。
于是我直接scp拷贝到北美的服务器上,但是mysql上还是有数据的嘛,所以我清除一下。
用以下生成清除语句
SET FOREIGN_KEY_CHECKS = 0;
SELECT CONCAT('TRUNCATE TABLE ', table_name, ';')
FROM information_schema.tables
WHERE table_schema = '数据库的名称';
SET FOREIGN_KEY_CHECKS = 1;
然后会输出一堆TRUNCATE TABLE xxxxxx;
把输出的语句,拷贝一下,然后执行,就可以清空表的数据,而不会删除表结构了。
注意,清空之前,先备份数据。拍桌子和放屁请同时进行,否则效果相反。