MySQL vers Maria DB: Guide de migration rapide pour Debian

Lorsqu'un produit qui fonctionne et qui rapporte, et qui est open source, tombe entre les mains d'une entreprise dont l'objectif n'est autre que de gagner de plus en plus d'argent, le monde tremble.

C'est déjà arrivé avec OpenOffice à l'époque et maintenant c'est au tour de MySQL. Portant vers Oracle derrière personne ne sait ce qui peut arriver et il est bon de savoir qu'il existe des alternatives et en particulier le meilleur de tous est Marie DB.

Citant Wikipedia:

MariaDB est un système de gestion de base de données dérivé de MySQL avec Licence GPL. Il est développé par Michel Widenius (fondateur de MySQL) et la communauté des développeurs FOSS. Entrez deux moteurs de stockage nouveau, un appelé Aria -qui remplace par des avantages MyISAM- et un autre appel XtraDB -Remplacer InnoDB. Il a une grande compatibilité avec MySQL puisqu'il possède les mêmes commandes, interfaces, API et bibliothèques, son objectif étant de pouvoir changer directement d'un serveur pour un autre.

Alors sans plus tarder, voyons comment passer de MySQL a Marie DB.

Il est important de savoir que pour que cela fonctionne à 100%, il faut avoir la même version de MySQL (5.5) et Maria DB (5.5)

Migrer de MySQL vers Maria DB

Ce processus ne peut pas être effectué à chaud. En d'autres termes, nous devons arrêter un instant nos services et processus qui s'exécutent MySQL.

# service stop apache2 # service stop nginx # service stop mysql

Dans ce cas, nous arrêtons Apache ou NGinx en fonction de celui que nous utilisons, et bien sûr, nous arrêtons également MySQL.

Plus tard, nous faisons une sauvegarde de notre base de données MySQL:

# mysqldump -u root -p --all-databases > mysqlbackup.sql

Et nous supprimons tous les paquets liés à MySQL:

# aptitude remove mysql-server-core-5.5 mysql-server-5.5 mysql-server mysql-common mysql-client-5.5 libmysqlclient18

Nous devons maintenant installer Maria DB. Malheureusement, il n'est pas encore dans les référentiels Debian, mais nous pouvons l'installer en utilisant ses propres référentiels. Pour les autres distributions, vous pouvez voir le instructions ici.

Nous ajoutons ce qui suit à notre fichier /etc/sources.list:

# Liste des dépôts MariaDB 5.5 - créée 2013-08-02 13:48 UTC # http://mariadb.org/mariadb/repositories/ deb http://ftp.osuosl.org/pub/mariadb/repo/5.5/debian wheezy main deb-src http://ftp.osuosl.org/pub/mariadb/repo/5.5/debian wheezy main

Ensuite, nous mettons à jour et installons Maria DB:

sudo aptitude mise à jour sudo apt-get install serveur-mariadb

Nous démarrons Maria DB (s'il ne l'a pas fait automatiquement) et vérifions que cela fonctionne:

# mysql -u root -p -Be 'show databases' Entrez le mot de passe:

Certains paramètres ont considérablement changé entre MySQL et MariaDB, mais il est très facile de travailler avec. Presque tout ce qui a changé est lié aux mécanismes qui ont été remplacés, par exemple la réplication. Nous n'avons qu'à copier les options d'optimisation des performances que nous avions dans le fichier mon.cnf de MySQLet reconfigurez le reste à la main.

Par exemple, ces données:

bind-address = 127.0.0.1 max_connections = 10 connect_timeout = 30 wait_timeout = 600 max_allowed_packet = 16M thread_cache_size = 256 OU sort = 16M bulk_insert_buffer_size = 16M tmp_table_size = 64M max_heap_table_size = 64M

Nous apportons les modifications nécessaires et redémarrons Maria DB.

# service mysql restart Arrêt du serveur de base de données MariaDB: mysqld. Démarrage du serveur de base de données MariaDB: mysqld. . . Recherche de tables corrompues, non fermées proprement et nécessitant une mise à niveau .. # mysql -u root -p -Be 'show databases' Entrez le mot de passe:

vous, Marie DB gardez le même nom mysql pour redémarrer le service, afin de maintenir une meilleure compatibilité. Si tout va bien, nous démarrons le reste des services:

# service apache2 start # service nginx start

Et prêt. Si nous voulons revenir en arrière (ce que je ne recommande pas), il suffit de lancer:

# service mysql stop # apt-get remove mariadb-server-5.5 mariadb-common mariadb-client-5.5 libmariadbclient18 # apt-get install mysql-server

Source: Article repris et modifié de BeginLinux


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Ile Maurice dit

    Comme la charge de la sauvegarde de la base de données est manquante.

    1.    animé dit

      Je ne pense pas nécessairement, mais merci pour la clarification. Nous avons fait la sauvegarde au cas où la base de données actuelle échouerait, car il me semble que les deux utilisent la même base de données. Je vais devoir en lire plus sur le sujet.

  2.   ozkar dit

    Fedora 19 est déjà livré avec Maria par défaut, mais ni court, ni paresseux, j'ai migré mes applications Web vers PostgreSQL, puisque MySQL nous a frappé les cornes, j'espère que PostgreSQL restera fidèle pendant au moins 2-3 ans.

    1.    animé dit

      ArchLinux comprend également Maria DB 😀

      1.    ozkar dit

        Vous avez un étau Arch ... que même moi j'ai des dents lâches et que je veux l'utiliser à nouveau ... mais je suis paresseux. 😀

  3.   3ndriago dit

    Je vois une tendance des systèmes incluant le support de MariaDB et d'après ce que j'ai lu, cela semble être au niveau de MySQL et même le surpasser à certains égards, mais ma question est: le fait qu'Oracle est maintenant derrière MySQL pour migrer et au fait, abandonner un gestionnaire de BD éprouvé et à des millions d'utilisations?

    1.    animé dit

      Vous avez raison. Le simple fait de dire qu'Oracle est une raison suffisante pour manquer de MySQL. De plus, Maria DB est un fork de MySQL maintenu par le créateur de MySQL et de la communauté. Je ne sais pas pour vous, mais au moins cela me donne beaucoup de sécurité. Et si on ajoute à ça que la compatibilité est très bonne, car je pense qu'il n'y a aucune excuse pour passer à Maria DB.

      😉

      1.    éliotime3000 dit

        Et c'est pourquoi je refuse d'installer Java sur mon Debian. J'utilise à peine OpenJDK avec IcedTea et cela fonctionne à merveille, et mieux que Java.

      2.    3ndriago dit

        Eh bien, mec, je suis sûr que vous devez avoir vos raisons de détester Oracle (ça sent comme celles qui vous font détester Microsoft, Apple et même Google) mais depuis Oracle ne m'a rien fait ... et je pense J'allais te donner un SPARC pour ton anniversaire XD

        1.    éliotime3000 dit

          Il fait référence au niveau logiciel et non au niveau matériel.

          1.    3ndriago dit

            Non, si on va haïr, on déteste tout, cette demi-mesure n'est pas cool ... hehehehehehe

          2.    animé dit

            xDDD

  4.   st0rmt4il dit

    Merci elav, au fait, est-il conseillé d'avoir les deux serveurs Web et de démarrer en même temps?

    Salutations!

    1.    animé dit

      Certaines personnes utilisent Apache comme serveur Web et NGnix comme proxy pour les requêtes Web. Tout un gâchis. Par exemple, lors de l'utilisation de Node.js, qui utilise un port à l'arrière que personne n'utilise et éventuellement votre FAI l'a bloqué 😀

  5.   éliotime3000 dit

    Bon tuteur de migration. De plus, Slackware a migré il y a longtemps vers MariaDB pour éviter de nouveaux dégâts avec MySQL.

    Dès qu'il sera sur le dépôt de sécurité de backport Debian, je l'annoncerai dès que possible. Pour l'instant, je prépare mon tutoriel sur l'installation / la configuration / la personnalisation de Slackware.

  6.   jlbaena dit

    Mais kde dépend-il toujours de mysql (sur debian) ou avec cette migration, il n'est plus nécessaire?

  7.   brunocascio dit

    Donc, d'après ce que j'ai compris, chaque application configurée avec mysql n'aurait rien à reconfigurer? Installez simplement MariaDB (et désinstallez mysql) et gardez les noms car mysql devrait fonctionner?

    Concernant les performances, les changements de moteur sont mentionnés.
    Sont-ils remarquablement performants avec les anciens MylSam et InnoDB?

    Quelqu'un a effectué des métriques?

      1.    brunocascio dit

        J'ai compris haha, merci!

  8.   Helena_ryuu dit

    Merci beaucoup! maintenant si c'est clair pour moi; D

  9.   Xavier dit

    Impossible de définir le mot de passe de l'utilisateur "root" MariaDB

    │ Une erreur s'est produite lors de la définition du mot de passe pour la MariaDB │
    │ utilisateur administratif. Cela peut être arrivé parce que le compte déjà already
    │ a un mot de passe, ou à cause d'un problème de communication avec la MariaDB │
    │ serveur. │
    │ │
    │ Vous devez vérifier le mot de passe du compte après l'installation du package. │
    │ │
    │ Veuillez lire le fichier /usr/share/doc/mariadb-server-10.1/README.Debian │
    │ pour plus d'informations.

    1.    Xavier dit

      J'ai désinstallé les paquets mariadb maridb-server
      J'ai supprimé le répertoire / var / lib / mysql.
      3 Réinstallation des packages Mariadb, Mariadb-server.
      systemct start mariadb; systemctl enable mariadb (problème résolu).