原创

帝国CMS如何互相转移分表之间的数据

最近发现帝国CMS文章数据添加太多到某一张分表中了,如图

blob.png

这是极其不合理的,需要优化下,所以这篇文章要告诉大家的也就是如何互相转移分表之间的数据。

我现在要将:phome_ecms_news_data_2的数据转移一些到phome_ecms_news_data_1的分表中(这些分表名都是默认的,这是我测试环境中的,生产环境中的表名更奇葩点。)

以下代码在执行前,请先进行数据备份!!!!!!

只需要几行SQL就能搞定了

phome_ecms_news_data_2 -> phome_ecms_news_data_1

开始查询:

/*首先插入1到1万的数据到目标分表中*/
INSERT INTO PHOME_ECMS_NEWS_DATA_1
SELECT * FROM PHOME_ECMS_NEWS_DATA_2 T2
WHERE T2.ID> 1 AND T2.ID< 10000;
/*然后删除原始分表中1到1万的数据*/
DELETE FROM PHOME_ECMS_NEWS_DATA_2
WHERE T2.ID> 1 AND T2.ID< 10000;
/*做完这些后,更新数据库缓存*/

其中的ID范围大家自己查下表,看下就可以了。这里是为了方便才这样写,我的ID早已不是这些了。。。

转移后的结果

blob.png

20170311 20:53更新

建议执行的时候,一条一条执行,不要一次性执行,先插入后才能删除!!一定要记住,血泪教训!!!

妈了个蛋,执行的时候,我不知道抽什么风,先跑了下delete,然后sqlyog提交了。。。提交了。。。。没救了没救了。。。。8W条记录灰飞烟灭!!!!!

本文来自:帝国CMS如何互相转移分表之间的数据-小码农,转载请保留本条链接,感谢!

温馨提示:
本文最后更新于 2022年03月01日,已超过 648 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我
正文到此结束
该篇文章的评论功能已被站长关闭
本文目录