Mise à niveau vers MySQL 5.6 ou MariaDB 10.0#
À partir de la version 1.7 d'i-doit, les exigences système pour la base de données changent. Alors que la version 1.6 nécessitait au moins MySQL 5.5 ou MariaDB 5.5, la version 1.7 nécessite MySQL 5.6 ou MariaDB 10.0. Cela peut également entraîner des changements dans les systèmes d'exploitation pris en charge par synetics. Cet article décrit les détails les plus importants pour garantir le bon fonctionnement d'i-doit.
Pour déterminer quelle version est utilisée, la commande suivante peut être exécutée dans la ligne de commande (cela fonctionne à la fois avec MySQL et MariaDB) :
1 |
|
Pour chaque système d'exploitation, il peut y avoir plusieurs chemins de mise à niveau. Nous recommandons l'utilisation de ceux qui, de notre point de vue, ont le moins d'impact sur le système :
Système d'exploitation | Version | Ancienne base de données | Nouvelle base de données |
---|---|---|---|
Debian GNU/Linux | 8 | MySQL 5.5, MariaDB 10.0 | MariaDB 10.0 |
7.8 | MySQL 5.5 | MariaDB 10.0 | |
Ubuntu | 14.04 LTS | MySQL 5.5, MySQL 5.6, MariaDB 5.5 | MySQL 5.6 |
12.04 LTS | MySQL 5.5 | MariaDB 10.0 | |
Red Hat Enterprise Linux (RHEL) | 7.1 | MariaDB 5.5 | MariaDB 10.0 |
6.7 | MySQL 5.1 | MariaDB 10.0 | |
SUSE Linux Enterprise Server (SLES) | 12 | MariaDB 10.0 | MariaDB 10.0 |
Windows Server | 2008/2012 | en fonction de la version de XAMPP | MariaDB 10.0 |
Avant d'apporter des modifications au système, il est absolument vital de sécuriser les données. Comme la durée du processus de mise à niveau varie en fonction du système d'exploitation, tous les utilisateurs d'i-doit doivent être informés à l'avance.
Debian GNU/Linux 8#
La version 8 de Debian GNU/Linux contient MySQL 5.5 et MariaDB 10.0 dans les paquets standard. Si MySQL est installé, il suffit d'installer le paquet MariaDB. Ce faisant, MySQL est remplacé par MariaDB :
1 2 |
|
Debian GNU/Linux 7.8#
La version 7.8 de Debian GNU/Linux contient MySQL 5.5 dans les paquets standard, mais pas MariaDB. Pour utiliser MariaDB, le dépôt officiel de MariaDB peut être téléchargé et installé. Attention : les dépôts tiers peuvent nuire au système. MySQL est remplacé par MariaDB lors de l'installation de ce dernier:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
1 2 3 4 5 6 |
|
Red Hat Enterprise Linux 7.1#
La version 7.1 de Red Hat Enterprise Linux (RHEL) contient MariaDB 5.5 dans les paquets standard mais pas MySQL. Pour passer à MariaDB 10.0, seulement quelques étapes sont nécessaires selon une entrée de blog de MariaDB. De cette manière, MariaDB 5.5 est remplacé par 10.0. Attention : les dépôts tiers peuvent compromettre le système.
Ce chemin de mise à niveau concerne la variante 64 bits du système d'exploitation.
Tout d'abord, la version actuelle est désinstallée :
1 |
|
Après cela, le fichier /etc/yum.repos.d/MariaDB.repo doit être créé et édité :
1 2 3 4 5 6 7 |
|
Enfin, les packages sont installés, le serveur MariaDB est démarré et les bases de données sont mises à jour :
1 2 3 |
|
Lors de la désinstallation des packages mentionnés précédemment, l'extension PHP associée peut également être désinstallée. Pour l'installer à nouveau, nous avons besoin des commandes suivantes :
1 2 |
|
Red Hat Enterprise Linux 6.7#
La version 6.7 de Red Hat Enterprise Linux (RHEL) contient MySQL 5.1 dans les packages standard mais pas MariaDB. Étant donné que cette version du système d'exploitation contient des packages très anciens pour MySQL, PHP et le serveur web Apache, nous conseillons généralement de ne pas l'utiliser et recommandons plutôt de passer à la version 7.1. Si cela n'est pas possible, un passage à MariaDB 10.0 peut être effectué en téléchargeant et en installant le dépôt officiel pour MariaDB, comme décrit dans un article de blog MariaDB. Attention : les dépôts tiers peuvent compromettre le système.
1 2 3 4 5 6 |
|
Après cela, le fichier /etc/yum.repos.d/MariaDB.repo doit être créé et édité :
1 2 3 4 5 6 7 |
|
Enfin, le package est installé :
1 |
|
SUSE Linux Enterprise Server 12#
La version 12 de SUSE Linux Enterprise Server (SLES) contient déjà MariaDB 10.0 dans les paquets standard mais pas MySQL. Par conséquent, aucune mise à niveau n'est nécessaire.
Windows Server 2008/2012#
XAMPP est recommandé si Windows Server 2008/2012 est utilisé. La distribution XAMPP mise à disposition par Apache Friends inclut le serveur Web Apache, PHP et MariaDB. Il est important de toujours utiliser la dernière version disponible.
Étant donné qu'il n'existe ni documentation officielle ni mécanisme de mise à jour pour XAMPP, le chemin de mise à niveau peut être compliqué et sujet à des erreurs. Par conséquent, une sauvegarde actuelle et des tests approfondis après la mise à niveau sont obligatoires.
Les étapes suivantes sont nécessaires si une version de XAMPP sans MariaDB 10.0 est appliquée :
- Copiez le dossier XAMPP, dans la plupart des cas dans C:\xampp\
- Téléchargez la dernière version de XAMPP depuis le site officiel
- Désinstallez la version actuelle de XAMPP
- Supprimez le dossier XAMPP
- Installez la nouvelle version de XAMPP dans le même dossier
- Restaurez les dossiers htdocs et mysql\data à partir de la copie du dossier XAMPP, ne remplacez pas les fichiers existants
- Ajustez les fichiers de configuration pour qu'ils répondent aux paramètres système requis
- Démarrez le serveur Web Apache et MariaDB5
- Effectuez des tests
Dépannage#
Incompatibilité mineure entre les en-têtes et la version mineure de la bibliothèque client
Il est possible que i-doit ne puisse pas établir une connexion avec le serveur MySQL/MariaDB après la mise à niveau. Le message d'erreur suivant s'affiche :
1 |
|
La raison de cette erreur réside dans les processus Apache encore en cours d'exécution. Les liaisons PHP pour MySQL/MariaDB (mysqli) devraient accéder à la nouvelle interface de MySQL/MariaDB, mais l'ancienne interface est toujours en mémoire. En redémarrant Apache, vous pouvez résoudre ce problème. Exemple pour Debian/Ubuntu :
1 |
|