Voilà la suite de mes retours !
J'ai finalement réussi à terminer ma migration (c'était ma 2e mais la 1e était un simple essai pas vraiment approfondie). On a découvert plus en détails les nouveautés (et les problèmes de Moodle 2.x !). Et on s'est penché sur les contenus : on a eu qq problèmes : les images qui n'apparaissent pas, des liens vides ajoutés au premier mot du premier paragraphe de la section 0 (ou 1 je ne sais plus), etc ...
Pour les images, c'était un problème de liens en dur (il faut lancer l'outil Search_and_replace - lire la doc pour la subtilité des cache des blocs !)
Pour le reste, afin de savoir si cela provenait de la migration elle-même (qui s'est étendue sur plusieurs jours), j'ai relancé une "3e" migration. Mais avant celle-ci j'ai fait du ménage, d'où mes derniers posts :
- Re: nettoyage de la table user dans la base de donnée
- Re: Détection des cours vides - Migration Moodle 2 - MAToo
"3e" migration :
1/ Copie complète de la PF de prod
Copie des 128 Go de moodledata (près de 4h pour la copie)
2/ Nettoyage de la PF de prod
Suppression des modules
- Présence / file_manager / graph_stats / bloc loancalc
- Jeu / QuizPort / Menu / exercise / journal / lams
> Suppression de cours : 200 environ
> Suppression de comptes utilisateurs :
1/ les sans rôles, connectés il y a plus de 6 mois : SELECT DISTINCT (id) FROM user WHERE id NOT IN (SELECT DISTINCT (userid) FROM role_assignments) AND user.deleted = 0 AND lastaccess < 6 mois A CALCULER !
Suppression de 2850 comptes
2/ les étudiants dont la dernière connexion est antérieur au 15/08/2011.
Pour cela, il faut isoler les autres (car, par exemple, les enseignants ont un role étudiant dans certains espaces ) :
> UPDATE user,role_assignments SET user.country = "FM" WHERE role_assignments.userid=user.id AND role_assignments.roleid=3 AND user.deleted=0 # 739 rows affected
> et idem avec
- 4 # 16 rows affected
- 1 # 4 rows affected
- 2 # 0 rows affected
- 9 # 39 rows affected
- 10 # 3 rows affected
- 13 # 2 rows affected
- 14 # 0 rows affected
Soit 803 personnes.
On peut maintenant supprimer les comptes ayant un role étudiant, dont le pays n'est pas FM et dont le dernier accès est antérieur à lundi 15 août 2011 soit 2797 comptes (NB : 16959 comptes si on enlève le dernier critère).
2/ les comptes "jamais connectés" ? Comment c possible ? Je laisse de coté pour le moment.
3/ Supprimer les comptes supprimés : via mon script
Avant suppression des 2797
Il y a 5630 utilisateurs supprimés.
Il y a 3195 utilisateurs sans données dans le système.
Après :
Il y a 8427 utilisateurs supprimés.
Il y a 4700~ utilisateurs sans données dans le système.
J'ai supprimé les 4700 comptes + les data associées.
J'ai vidé les table logs + stats_daily, stats_weekly, stats_monthly.
La base fait maintenant ~3,660,852 lignes et 2.4 GiB.
Le dossier moodledata ne pèse plus que 65 Go au lieu de 128 Go avant la suppression.
3/ Installation de 2.2
J'ai remis le thème standard puis j'ai archivé la v1.9 et installé 2.2 via GIT : voir la procédure.
J'ai copié le fichier config car sinon il ne peut pas savoir que c'est une MAJ
Installation des plugins V2.2 :
-> Questionnaire via GIT OK
-> Nanogong (manuellement, module uniquement) OK
-> forumNG via GIT OK
-> customsql via GIT OK
-> hotpot (manuellement pr le moment, que le module, pas le qformat) OK
4/ Lancement migration !
Tout est prêt : le script de surveillance (taille data + process mysql), le fichier upgradelib.php modifié pour être plus bavard.
17h42 > 19h15 : le script s'arrete après "mod_scorm". J'essaye de le relancer mais j'obtiens un message "Site is being upgraded". Après plusieurs tentatives, je remets le fichier upgradelib.php original et ca passe. Ca ne prends que qq instants et la MAJ est terminée. Maintenant que l'on sait que cela peut prendre moins de 2h (si on fait du ménage avant) on peut laisser le fichier upgradelib.php original.
Bilan :
- on a des problèmes avec certains liens vers des fichiers audios, des problèmes dans l'affichage de certaines questions / certaines réponses.
- on a des pb d'intégrité (health.php) en 1.9 qu'il faudrait résoudre avant
- ForumNG et Nanogong ne récupèrent pas correctement les activités migrées : on a des messages d'erreurs lorsque l'on essaye d'accéder à celles-ci. Dans certains cas, ca casse même complètement le cours.
- si les wikis étaient vides en 1.9, un message d'erreur s'affiche losqu'on accède à ces wikis après avoir migré
- supprimer les bases de questions est très lourd et je n'arrive pas à toutes les supprimer !
Suite à Moodle Moot, je vais voir s'il n'est pas finalement possible de faire l'idéal : installer une PF fraiche et migrer automatiquement les cours depuis 1.9 en les exportant/important.
J'espère que je suis resté clair dans mes explications !