隨著DEDE使用時間越來越長,文章越來越多,DEDE的主要文章模型article在MYSQL里表名dede_addonarticle將會越來越大,MYSQL讀取處理就會越來越慢,因此很有必要對DEDE的文章模型的數據庫進行分表操作。當然如果你在看到這篇文章的時候,正要開始用DEDE建站,那我的建議是,在開始之前多新建幾個內容模型,然后一個欄目對應一個內容模型,這樣就只需要進行步驟一,不用后面的數據庫操作了。
言歸正傳,在開始MYSQL分表之前,你最好把全站數據都備份一下,防止出錯,然后需要先新建一個內容模型,方法是點擊-核心-頻道模型-內容模型管理-增加新模型,建立模型之后要新建一個字段,名字是:文章正文,英文名是:body,要選擇html文本存儲模式。固定發布模式。
建完之后就能在MYSQL里看到多了兩個數據表,一個是dede_archivesXX,一個是dede_addonXX,可以自己取名。我們主要的操作在這兩個表上進 行。
步驟一、在DEDE后臺進行內容模型新建

當然如果你都只用文章模型那還有個簡單的操作辦法:
首先進入“頻道模型”找到“普通文章”,“普通文章”后面有個復制操作,看到了就點擊復制,這樣就能增加一個單獨的表了,也就是分表。

下面的圖片是復制出來的界面圖片

把“新頻道名稱”你自己改下,比如資訊欄目需要用這個表就改成資訊”,方便以后區分。默認的表名字是dede_addonarticle17,這個數字可以改
建立好表之后,再創建欄目,注意,創建欄目的時候“內容模型”要選擇剛才你復制的那個,就是資訊|article17”

步驟二:對舊有數據進行遷移,MYSQL操作
這一步是我們對原來舊模型里面的數據,遷移到新增加模型的數據庫中的主要操作,進入后臺系統管理-系統帳號管理-SQL命令運行器
在下面的運行小窗口運行SQL的命令。
主要命令步驟如下:
1、insert into dede_addonX select * from dede_addonarticle where typeid=Y
這個dede_addonX就是剛剛我們建立的兩個數據庫中的一個,是一個附表。
這句話的意思是我們把dede_addonarticle(原來的大表)中的某一個檔目(文章欄目數字號Y)中的所有數據復制到dede_addonX這個表里。
2、insert into dede_archivesX select * from dede_archives where typeid=Y
這個dede_archivesX是我們剛剛建立模型中的主索引表,這句話的意思和上句一樣。
3、UPDATE `dede_full_search` SET `channelid` = 'X' WHERE`dede_full_search`.`typeid` =Y
將兩個表復制完之后我,我們需要把我們DEDE數據的主索引表進行較正。
4、UPDATE `dede_archivesX` SET `channel` =X WHERE `typeid` =Y
再將我們的文章模型索引表進行較正
5、delete from dede_addonarticle where typeid=Y
將原來已經復制過的數據在原表刪除。
步驟三:對新模型新欄目進行必要設置
頻道管理,相關檔目修改-基本設置

內容模型選定剛剛建立的那個模型,然后點高級設置,要設定相對應的模板。然后最下面的繼承選項,選定之后整個欄目都會按這個設置順承。

最后,檢查一下是不是正確,點進這個新欄目看看里面文章是不是能正常顯示,如果能顯示,說明你成功了。
這個操作主要應用于文章模型,其它模型大同小異,也是可以實現。DEDECMS的分表操作相當于把一個大水庫分成若干個小水庫,然后通知接水的人,去小水庫接水。省卻了全部擁擠在大水庫邊排隊的問題。
本頁內容由塔燈網絡科技有限公司通過網絡收集編輯所得,所有資料僅供用戶參考了本站不擁有所有權,如您認為本網頁中由涉嫌抄襲的內容,請及時與我們聯系,并提供相關證據,工作人員會在5工作日內聯系您,一經查實,本站立刻刪除侵權內容。本文鏈接:http://www.webpost.com.cn/4369.html