Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 6|回复: 0

dedecms分表教程

[复制链接]

主题

帖子

5

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5
发表于 2024-10-7 16:28:14 | 显示全部楼层 |阅读模式
很多用dede织梦做网站的朋友都会遇到数据过大的情况,这样就造成生成html速度缓慢打开栏目列表变慢等等问题,笔者根据织梦论坛部分帖子总结出默认文章模型转移数据到其他新建模型的简单教程,现在分享出来,高手可以忽略.
   
    强力建议你在进行以下操作时先备份数据库!!!丢失或者任何错误本人概不负责。使用以下方法本人成功转移.
   
    首页建立新模型--系统模型-新建字段-内容(body)html文本 固化字段。
   
    现在设定下演示的相关说明,原模型是文章模型,channel=1,附加表为dede_addonarticle;新建模型X ,channel=19,附加表为dede_addon19;原栏目typeid=300 新建以X为内容模型的栏目typeid=400
   
    接下来开始行动,在phpmyadmin或者织梦自带的SQL命令行工具 运行以下命令,特别说明:因为新建模型和原普通文章模型主键一样的话会无法插入数据,提示错误:#1062 - Duplicate entry '343' for key 'PRIMARY' ,所以要在phpmyadmin里修改下新建模型附加表dede_addon19的主键aid数据类型为bigint,具体方法可以百度。
   
    我们继续,输入:
   
    insert into dede_addon19 select * from dede_addonarticle where typeid=300;
   
    上面这句SQL的意思是 挑选出dede_addonarticle(也就是普通文章)表里栏目为300的内容插入到新建的 dede_addon19(也就是X模型)
   
    再次运行,输入:
   
    update dede_archives set channel =replace(channel ,'1','19') where typeid=300;
   
    意思是 把dede_archives主表里栏目为300的数据的channel 由1改成19;
   
    再次运行,输入:
   
    update dede_archives set typeid =replace(typeid ,'300','400') where channel=19
   
    同理把channel为19 的数据栏目由300改为400;
   
    OK了、文章路径什么都设置好,更新下栏目缓存,生成栏目列表及内容,OK了!
   
    这个方法适用于大量dede_addonarticle数据表的分割,比如你这个数据表已经500M以上那么分出来势在必行。
   
    不够完美的地方是:dede_archives主表没有分开。希望高手可以补充。
   
    本文由《求职招聘服务网》-原创首发,请注明,本人保留追究责任的权益!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|教育创新工坊

Copyright © 2001-2013 Discuz Team.Template by Discuz Team.All Rights Reserved.

Powered by Discuz!X3.4

快速回复 返回顶部 返回列表