Moodle1.9系からMoodle2.1系へのユーザ移行手順

Re: Moodle1.9系からMoodle2.1系へのユーザ移行手順

- Hiroyuki H の投稿
返信数: 0

ご報告ありがとうございます。大変参考になりました。長く使ってきたMoodleを掃除するために、まっさらなMoodleにユーザプロフィールだけ移行したい、という要望って少なからずあるような気がするんですよね。
簡単な手順を確立しておきたいところです。

ただ、私自身もヘロヘロになってしまったので、思いついたことだけメモ代わりに書かせていただきます。

ユーザプロファイルに追加したフィールドは、予めまっさらなMoodle2.4のサイトにフィールドを定義しておいてもだめ、ということでしょうか。(バックアップファイルに含まれない?)

パスワードが無効になり更に「手動登録」に初期化される件ですが、Moodle2.4までアップグレードしたサイトと、まっさらなMoodle2.4のサイトのURLを同じにして(apacheのエイリアスを付け替えるなどして)、さらにconfig.phpのpasswordsaltmainを同一にすればクリアできそうな気がします(勘です)

ユーザIDが変わってしまうのがどの時点なのかによりますが、例えば

  • Moodle2.4までアップデートした状態で、一度「バルクユーザ処理」で全ユーザを選択してCSVでダウンロードしておく
  • 上記CSVをidフィールドでソートした後、欠けているid(削除済みユーザの番号など)をダミーユーザで埋める
  • 上記CSVを元にアップロード用のCSVを作成(これにはidは記載できない)
  • まっさらなMoodle2.4の「ユーザをアップロードする」でCSVアップロード

すると、結果的にidを一致させることができるような気がします。(順番に追加されるので)
ダミーユーザは後でまた「ユーザーをアップロードする」で別のダミーユーザだけのCSVをdeletedで流し込んで消せるはずです。
その上で、全ユーザのユーザデータを含むバックアップをリストアしてみるとか。
(リストア時に既存のユーザデータの上書きをしてくれるのであれば。ユーザデータを含むバックアップってあまり使ったことがないのでイマイチ把握していません)