ekCraft blog

SE転向を目指すサンデープログラマーの備忘録

moodleアップデート(3.3.2→3.6.2+)

検証・学習用にさくらのレンタルサーバーでひっそりと運用しているmoodleサイトを最新版(2019年2月現在)にアップデートしたので備忘録です。手順は基本的に以下のリファレンス通りに行えば大丈夫だと思いますが、翻訳のせいかちょっと戸惑う記載が多くて時間かかってしまいました。 mahakala.lesc.uec.ac.jp 以下、殴り書き注意。

動作環境の確認

まずは、環境が新バージョンのシステム要件を満たしているかチェックしておきます。moodleにサイト管理者アカウントでログインして、ダッシュボード > サイト管理 > サーバ > 動作環境で確認できます。 f:id:ekCraft:20190205230656p:plain 3.4以降からはPHP7.0以上が必要とのこと。さくらのレンタルサーバーではどのバージョンを使うか、コントロールパネルから選択できます。後述。 

バックアップ

動作環境に問題が無ければ、データをバックアップしておきましょう。 バックアップするものは、主に以下3つ。

  1. moodleソフトウェアの中身(例:home/www/moodle
  2. moodledataの中身(例:home/moodledata)
  3. データベース(今回はなくても問題ありませんでした。念の為)

バックアップにはcpコマンドを使いました。バックアップ先をmkdirしておかないとうまくいかなかったけど、そういうものなんでしょうか?だれかご存知でしたら教えてください。。(それか、ほかにもっといい方法あれば。。)

cp -r コピー元ファイル名 コピー先ディレクトリ

DBのダンプはphpMyAdminのエクスポート機能を利用。

サイトをメンテナンスモードにする

別に誰が見るわけでもないのでしなくてもいいけど、一応しておきました(これも勉強)。ダッシュボード > サイト管理 > サーバ > メンテナンスモードでYesを選択します。メッセージは適当。 f:id:ekCraft:20190205234259p:plain

見え方はこんな感じ。 f:id:ekCraft:20190205234542p:plain

moodle3.6.2+をインストール

tgzファイルをダウンロードして、インストール先に置きます。普通はwgetでやるんでしょうね。。 f:id:ekCraft:20190205235039p:plain

download.moodle.org

tgzファイルを置いた場所にcdして以下のコマンドを実行。

tar xvzf tgzファイル名

展開されたら、moodleソフトウェアのバックアップからconfig.phpを新しいmoodleソフトウェアの中(home/www/moodleの直下)にコピーしておきます。

ここで、PHPのバージョンを7.xに切り替えておきます。(3.4以前では5.xが動作要件でした)さくらのレンタルサーバーでは、コントロールパネルから簡単に切り替えることができます。 f:id:ekCraft:20190206000725p:plain

アップグレードプロセスの起動

moodleサイトに移動します。動作環境やデータベースとの整合性等が自動でチェックされて、アップグレードが完了します。最後に、サイト管理者権限でログインして、メンテナンスモードをNoに戻して終わりです。

お疲れ様でした。