在 DreamHost 的後台裡,one-click installs 的懶人安裝/升級選項存在已經很久了。更新的速度也不錯,不過我這個人就是天性愛猜疑,安裝看起來是無痛,升級痛不痛我就不清楚了。與其每次升級都得抱著玩俄羅斯輪盤的心情去點 upgrade 那顆鈕,不如靠自己手動慢慢來。

  這次是從 1.12.0 升級到 1.13.3 版。

  1. 備份資料庫與資料夾
    若是跟我一樣使用 mysql 可用 mysqldump 來備份資料庫
    $ mysqldump --user=USERNAME -h MYSQLHOST -p DATABASENAME > BACKUPNAME.sql

    至於目錄就隨便 tar 一下就好
    $ tar jcvf BACKUPNAME.bz2 /path/to/your/wiki


  2. 將新檔解壓覆蓋原目錄
    到官網抓下 mediawiki-1.13.3.tar.gz
    $ tar zxvf mediawiki-1.13.3.tar.gz -C /path/to/your/wiki --strip-components=1

    若是系統比較老舊的使用者,像是 DreamHost 的系統,要稍微修改一下。
    $ tar zxvf mediawiki-1.13.3.tar.gz -C /path/to/your/wiki --strip-path=1


  3. 準備升級資料庫
    將 wiki 根目錄中的 AdminSettings.sample 複製一份成 AdminSettings.php 並按文件提示修改內容,寫入資料庫的帳號及密碼。
    $wgDBadminuser          = 'wikiadmin';
    $wgDBadminpassword  = 'adminpass';

    為了安全,別忘記更動一下 AdminSettings.php 的屬性
    $ chmod 700 AdminSettings.php


  4. 升級
    其實可以經由網頁的方式來進行升級,不過我很懶,就繼續由 shell 完成吧!
    切換目錄至 wiki 根目錄下的 maintenance 並執行下列指令
    $ cd /path/to/your/wiki
    $ cd maintenance
    $ php update.php --aconf ../AdminSetting.php

    DreamHost的使用者,打上列的指令會出錯是很正常的。因為系統預設的 PHP 版本是 4.4.9 ,MediaWiki 是不吃的。要使用 PHP5 需加上 path。
    $ /usr/local/php5/bin/php update.php --aconf ../AdminSetting.php


  5. 打完收工
    東西跳一跳就 ok 了。大功告成!

  6. 善後
    若是有安裝 FCKeditor 的,頁面上會出現 "Expansion depth limit exceeded" 的錯誤訊息。只要更新 FCKeditor 即可
    $ cd /path/to/your/wiki/
    $ cd extensions
    $ svn export http://svn.fckeditor.net/MediaWiki/trunk FCKeditor --force

    重置 MediaWiki 使用者密碼
    $ cd /path/to/your/wiki
    $ cd maintenance
    $ php changePassword.php --user='username' --password='blahblah'


 相關文章 
2009/02/02 03:03 2009/02/02 03:03

Trackback :: http://geeksoul.org/trackback/188