Moodleの移行(1.5.3→1.6.4)Moodleを、稼働中の1.5.3+から三重大版(1.6.4+)へ移行した記録。 ここでは結果のみ書くが、実際の作業は試行錯誤の連続。 半日がかりで、大変だった… 前処理まず、データベース関係。
次に、必要なファイルのバックアップ。tarとかで適当に。
ファイルのダウンロード「三重大学版Moodleソース」からファイルをダウンロードする。 # wget https://portal.mie-u.ac.jp/src/moodle07.tar.bz2 ファイルの展開ダウンロードしたファイルを展開して、インストール先に設置する。 # tar zxf moodle07.tar.bz2 # mv /hogehoge/moodle /hogehoge/moodle.bak # mv moodle07 /hogehoge/moodle このとき、Moodleのデータ用ディレクトリは、cache/の中身を削除しておく。 インストール開始基本的に、奥村先生@三重大のご説明の通り。 言語やデータベースの設定、システムの確認などが表示されるので、適切に設定していく。ここで、データベースを、2つ作ったどちらか一方にしおけば、作業に失敗しても、すぐに元に戻せる。 config.phpを作る画面では、表示された内容をコピーして、moodleディレクトリ内にファイルを作成する。ただし、「$CFG->unicodedb」、「$CFG->unicodecleanfilename」の設定はここではしない。あとでする。 # vi /hogehoge/moodle/config.php Moodleの設定config.php作成画面の「続く」をクリックすると、Moodleの設定が始まる。今回は、各種アップグレード作業がある。次のような感じ。
データベースのUTF-8化ひと通りのアップグレードが終わると、システムが使えるようになるが、ここで重要な作業がある。データベースのUTF-8化である。Moodle 1.6には、UTF-8への移行ツールがついているので、管理メニューの一番上にあるリンクをクリックして、UTF-8化する。今回は問題なく終了できた! ココまで終わって、はじめて日本語の言語パックが利用可能になる。つまり、日本語表示が可能となる。 PHPとMySQLの文字コードの問題いろいろ設定し始めると、日本語を入力して設定した部分がおかしい。使用しているデータベース(MySQL 4.1.18)はバイナリバージョンをインストールしているので、文字コード変換関係があやしい。 そこで、.htaccessに次のように記述。Moodleのディレクトリに入れることで、対処できた。 <IfModule mod_php5.c> php_value default_charset UTF-8 php_value mbstring.internal_encoding UTF-8 php_value mbstring.script_encoding UTF-8 php_value mbstring.http_output UTF-8 </IfModule> ほかにもおかしいのがあったが、面倒なので、phpMyAdminを使って、 直接データベースの内容を書き換えた。 その他のファイルのUTF-8化下の2つの情報を参考に、MoodleのデータファイルのUTF-8化をした。ただし、やるのは、各コースのデータだけ。
今回は、どうもUTF-8化はされなかったみたい。 Moodleの設定(UTF-8化完了後)次の2つの内容を、追加する。これで課題など日本語の名前のファイルをアップロードしても、日本語のファイル名のまま表示・処理してくれる。 $CFG->unicodedb = true; $CFG->unicodecleanfilename = true; バグフィックス&改良
参考情報
|