joomla 1.5 升級2.5

Joomla 已經由1.5 升級到2.5,中間版本有1.6,1.7,Joomla 也宣佈了不會再對1.5再進行升級,因此想要繼續有更好的系統使用,必須升級到1.7或最新的2.5版本。筆者使用了joomla 1.5系統,連k2 V2.3,phocagallery 2.8.0版本,這次插件已經提供了joomla 2.5版本,因此可以放心升級,但如何升級呢?筆者在此作為介紹,但必須注意的是,你的系統和我的不一樣,升級的方法也有點不同,本文只作為參考,很多問題還是要根據錯誤來分析解決。好,馬上開始升級joomla 1.5 到2.5版本。

Joomla 1.5 升級2.5

首先在joomla 安裝Akeeba Backup進行全面備份,以防萬一。用akeeba backup 的好處很多,除了一鍵備份,還原也可以用https://www.akeebabackup.com/download/akeeba-kickstart.html 進行還原,十分方便,適合遷移到任何站點。

安裝jupgrade for joomla 1.5,http://redcomponent.com/jupgrade,我安裝的是2.5.0 版本,成功安裝后,選擇extensions=> plugin manager=>system-mootools upgrade, enabled,開啟mootools 動態更新

選擇components-> jUpgrade,就按start upgrade, 然後等待下載2.5,接著自動升級

最後升級后,會到了一個jupgrade的後臺,你可以看看地址,假如原來是http://a/administrator/,現在就會變成http://a/jupdated/administrator/,記得這個後臺與原來的不同,因為他拷貝了一份過去,保留了原來的文件。

數據庫也做了改變,原來joomla 模式表頭是用jos_開頭,現在升級后用j17_開頭,原來的數據庫表仍然存在。你可以使用phpmyadmin 進行查看。

 

Joomla 1.5 k2 升級到joomla 2.5 K2

由於在1.5 一直都是用k2 來作為內容系統,但是k2是很難導出的,所以必須一直用,用jupgrade后,k2會消失了,因為舊的版本在2.5不能用,因此必須在2.5中重新安裝k2,不用擔心數據,重新安裝后,數據就會重新出現,先下載k2 joomla 2.5,http://getk2.org/,然後到extensions=>extension manager 中選擇最新的k2 joomla 2.5版本,安裝就是了,然後就可以見到數據馬上回來了,非常簡單

phocagallery 升級到joomla 2.5

phocagallery 是比較受歡迎的joomla相冊,但是升級比較麻煩,主要是數據庫那有問題,很多時候都必須手動更改數據庫

首先在下載最新版本支持joomla 1.7和2.5版本,http://www.phoca.cz/download/category/4-phoca-download-component,然後到extension manager 中安裝phocagallery ,然後會問你安裝還是升級,選擇upgrade,安裝后會出現錯誤

Phoca Gallery not successfully upgraded:

Error while updating Alias column in Phoca Gallery Comments tableError while updating Alias column in Phoca Gallery Image Comments tableError while updating Fanpageid column in Phoca Gallery FB Users table

 

只要你開啟phocagallery 中的categories,也會會出現類似錯誤

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in

jupgrade\libraries\joomla\database\database\mysql.php on line 287

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in jupgrade\libraries\joomla\database\database\mysql.php on line 287

 

主要是數據庫升級錯誤,因此需要手動更新數據庫資料

由於用jupgrade后,數據庫表頭名字會改為j17_xxx之類,舊的表還在,例如jos_xxx,而phocagallery的表有:

jos_phocagallery
jos_phocagallery_categories
jos_phocagallery_comments
jos_phocagallery_img_comments
jos_phocagallery_img_votes,
jos_phocagallery_img_votes_statistics
jos_phocagallery_user
jos_phocagallery_votes
jos_phocagallery_votes_statistics

首先必須把這些表的名字改成j17_ 開頭

可以用sql 語句進行改名

RENAME TABLE `jos_phocagallery_user` TO `j17_phocagallery_user` ;

由於我是2.8 升級過來的,所以缺乏了一些表,因此必須自己添加,經過對比后,發現少一個表j17_phocagallery_fb_users,就到phpmyadmin 中執行

CREATE TABLE `j17_phocagallery_fb_users` (

`id` int(11) NOT NULL auto_increment,

`appid` varchar(255) NOT NULL default ”,

`appsid` varchar(255) NOT NULL default ”,

`uid` varchar(255) NOT NULL default ”,

`name` varchar(255) NOT NULL default ”,

`link` varchar(255) NOT NULL default ”,

`secret` varchar(255) NOT NULL default ”,

`base_domain` varchar(255) NOT NULL default ”,

`expires` varchar(100) NOT NULL default ”,

`session_key` text,

`access_token` text,

`sig` text,

`fanpageid` varchar(255) NOT NULL default ”,

`published` tinyint(1) NOT NULL default ‘0’,

`checked_out` int(11) unsigned NOT NULL default ‘0’,

`checked_out_time` datetime NOT NULL default ‘0000-00-00 00:00:00’,

`ordering` int(11) NOT NULL default ‘0’,

`comments` text,

`params` text,

`language` char(7) NOT NULL default ”,

PRIMARY KEY (`id`)

) DEFAULT CHARSET=utf8;

修改后,然後繼續執行下面的語句

ALTER TABLE `#__phocagallery` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery_categories` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery_comments` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery_votes` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery_votes_statistics` ADD `language` char(7) NOT NULL default ” AFTER `average` ;

ALTER TABLE `#__phocagallery_img_votes` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery_img_votes_statistics` ADD `language` char(7) NOT NULL default ” AFTER `average` ;

ALTER TABLE `#__phocagallery_user` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery_img_comments` ADD `language` char(7) NOT NULL default ” AFTER `params` ;

 

ALTER TABLE `#__phocagallery` ADD `metadata` text AFTER `params` ;

ALTER TABLE `#__phocagallery_categories` ADD `metadata` text AFTER `params` ;

 

ALTER TABLE `#__phocagallery_categories` ADD `extfbuid` int(11) NOT NULL default ‘0’ AFTER `params` ;

ALTER TABLE `#__phocagallery_categories` ADD `extfbcatid` varchar(255) NOT NULL default ” AFTER `params` ;

ALTER TABLE `#__phocagallery` ADD `exttype` tinyint(1) NOT NULL default ‘0’ AFTER `params` ;

 

3.0.0 RC3 (to 3.0.0RC2)

ALTER TABLE `#__phocagallery_fb_users` ADD `comments` text AFTER `params` ;

 

3.1.2 UPDATE ONLY

ALTER TABLE `#__phocagallery_img_comments` ADD `alias` varchar(255) NOT NULL default ” AFTER `title` ;

ALTER TABLE `#__phocagallery_comments` ADD `alias` varchar(255) NOT NULL default ” AFTER `title` ;

ALTER TABLE `#__phocagallery_fb_users` ADD `fanpageid` varchar(255) NOT NULL default ” AFTER `sig` ;

上面的語句,最好一句一句的更新,因為裏面包含著不同版本的更新,而且更新不是一定成功,主要是針對版本,這些語句在安裝文件裏面的install_bak裏面也有。

執行后回到phocagallery 就可以看到原來的相冊資料了

joomla 2.5首頁的標題

先看首頁,基本上已經正常,只差風格模板,但是看到首頁,你會見到一個奇怪的一堆文字在首頁,如何消除這個首頁的title ,

要到main menu,選擇首頁,在page display options 那就可以修改,你可以設置不顯示。

內容已經恢復,接下來就是修改風格,而這個東西不是很大風險,個自都不同,因此就不多說了。

最後,就是把jupgrade 的文件搬到正式的資料夾中,把原來的文件備份移開,然後把jupgrade 裏面的文件都拷貝到主要的目錄中,登入測試一下,成功的話,進入msyql,可以把原來的數據庫jos_開頭的表刪除,這些都是舊數據,當然,做任何事都必須先要備份。

作者

rockfu

由小學年代已經沉迷電腦,喜歡分享電腦相關資訊。

“joomla 1.5 升級2.5” 有 3 則評論

  1. 請問 修改數據庫要從哪邊進入呢?我找不到如您圖檔那樣的數據庫!!

    1. 一般需要進入phpmyadmin,這個是有介面的mysql 數據庫編輯器,假如空間服務商沒有提供,那麼就要進入終端機進行修改

評論已被關閉。