Mise à niveau vers Ubuntu 20.04
La semaine dernière j'ai fait la mise à niveau du système d'exploitation qui héberge notamment ce site web de Ubuntu 18.04 vers la version 20.04.
Cette mise à niveau fut nécessaire puisque mon site web utilise la plateforme Ghost. Or, depuis la version 5, Ghost nécessite la version MySQL 8 comme gestionnaire de base de données. Mais, MySQL 8 n'est pas disponible dans les paquets standards de Ubuntu 18.04. Donc, la mise à niveau du système d'exploitation s'imposait.
Procédure de mise à niveau d'Ubuntu 18.04 vers 20.04
- Assurez-vous d'avoir une sauvegarde de tous vos fichiers importants et de votre système en général. Cela vous permettra de restaurer votre système en cas de problème pendant la mise à niveau.
- Ouvrez un terminal et utilisez la commande suivante pour mettre à jour les paquets de votre système :
$ sudo apt update && sudo apt upgrade
3. Redémarrez le système Ubuntu par la commande suivante :
$ sudo reboot
4. Utilisez la commande suivante pour démarrer le processus de mise à niveau :
$ sudo do-release-upgrade
5. Suivez les instructions à l'écran pour terminer la mise à niveau. Cela peut prendre un certain temps, alors soyez patient.
6. Une fois la mise à niveau terminée, redémarrez votre ordinateur pour appliquer les changements.
7. Vérifiez que vous êtes bien passé à la version 20.04 en utilisant la commande suivante :
lsb_release -a
MySQL 8
La mise à jour du serveur vers 20.04 a aussi mis à niveau MySQL vers la version 8.
Par défault, MySQL 8 utilise le jeu de caractères utf8mb4_0900_ai_ci.
Or, antérieurement MySQL utilisait le jeu de caractères utf8mb4_general_ci. Lorsque vous exécutez une migration Ghost les nouvelles tables sont ajoutées avec le nouveau jeu de caractères, ce qui est incompatible avec utf8mb4_general_ci.
Pour y remédier on doit redéfinir la valeur de défaut du jeu de caractères utf8mb4 :
- éditer le fichier de configuration MySQL
/etc/mysql/conf.d/mysql.cnf
- insérer le code suivant :
[mysqld]
init-connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'
- sauvegarder le fichier de configuration et relancer MySQL par la commande :
service mysql restart
Informations supplémentaires
Une discussion détaillée est présentée sur le forum de Ghost.