服务器之家

服务器之家 > 正文

织梦DEDECMS分表迁移内容模型转入新建模型的方法

时间:2019-09-02 20:10     来源/作者:服务器之家

DEDE站点一大,文章一多,就会发现前期没规划好,没进行分表,造成数据库庞大臃肿,执行效率低了。这个时候,其实还可以补救,就是对频道进行分表操作,将你网站的一个个频道新建一个个模型,用来对应不同的数据库表进行分表操作。这里涉及到数据库操作,因此需要备份下数据库必加保险。

首先在织梦后台建立新内容模型 ,(核心-频道模型-内容模型管理-然后复制文章模型或者你要用的某个模型)再用以下的MYSQL 语句 将以前的栏目文章转入新模型,

假设以前的栏目为文章模型,栏目ID 为 31,新建模型ID为7(默认的文章模型为1,模型ID可以在内容模型管理最左侧看到),使用新建模型建立的新文章栏目ID为52,数据库中新模型附加表为dede_addonarticle17

执行以下操作

1、将原模型下的ID31的栏目内的全部内容转移到新模型dede_addonarticle17

INSERT INTO dede_addonarticle17(aid,typeid,redirecturl,userip,body) SELECT aid,typeid,redirecturl,userip,body FROM dede_addonarticle where dede_addonarticle.typeid =31

2、删除原栏目下的全部内容(已经复制一份到新模型下了)

DELETE FROM `dede_addonarticle` WHERE typeid =31

3、将关联模型的地方全部改写一遍,将原来定义栏目ID31对应的频道模型全部由1改成7

update dede_arctiny set channel=7 where typeid=31

update dede_archives set channel=7 where typeid=31

update dede_arctype set channeltype =7 where id =31

4、修改关联栏目,将原来调用31号栏目的地方,全部改为52号栏目

update dede_addonarticle17 set typeid=52 where typeid=31

update dede_archives set typeid=52 where typeid=31

update dede_arctiny set typeid=52 where typeid=31

5、删除旧栏目

DELETE FROM dede_arctype WHERE id=31

以上则是织梦DEDECMS分表迁移内容模型转入新建模型的方法的全部内容,需要注意的是,所有sql语句均使用的默认数据库前缀,如您的数据库前缀做过自定义,需修改为您自定义的数据库前缀。另外,所有操作请先备份在做操作!

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍 2019-06-05
逃跑吧少年怎么卡皮肤 逃跑吧少年卡永久皮肤技巧
逃跑吧少年怎么卡皮肤 逃跑吧少年卡永久皮肤技巧 2019-06-21
返回顶部