PHPBB论坛分表存储备份,新论坛保留板块结构,清理腾空间,留下50-100贴填充内容

有个老的论坛,用的PHPBB程序,因为数据库日益臃肿,想将论坛用新数据库存储,将当前的数据库和程序不变,做个存档,

同时新论坛想用原来的域名http://域名/phpbb2023/新建立,但同时又想保留老论坛板块下最近的帖子,比如50条-100条作为过渡,避免新论坛空荡荡的。

查资料,并在自己的笔记本上搭建服务器环境,安装恢复备份,折腾着研究了一下午。。。

phpbb_post表topic_id字段去重(去除帖子回复)
1,创建新tmp表 用group by 根据“By”指定的规则对topic_id数据进行分组和筛选去重

create table tmp as select * from phpbb_posts group by topic_id

2,删除原表

DROP TABLE IF EXISTS phpbb_posts;

3,tmp表改名

alter table tmp rename phpbb_posts;

4查询各版块的帖子数目(16为论坛板块ID,好在板块不多,挨个查询一遍,记下数目)

SELECT * FROM `phpbb_topics`WHERE forum_id =16 
phpbb_topics表是帖子标题,php_posts表为帖子内容,两个表都得删除大部分,清理腾空间,留下50-100贴填充内容就好
SELECT * FROM `phpbb_posts`WHERE forum_id =16


5,按板块帖子数目删除phpbb_posts表,limit后面的数字为要删除的数目

DELETE FROM `phpbb_posts` WHERE forum_id=16 ORDER BY `topic_id` LIMIT 1997 

6,按板块帖子数目删除phpbb_posts表

DELETE FROM `phpbb_topics` WHERE forum_id=16 ORDER BY `topic_id` LIMIT 1997

分享到:
赞(0)