Cet article explique la façon de gérer plusieurs versions différentes de MariaDB installées en les exécutant une à la fois. Ceci est utile pour effectuer des analyses comparatives, ou au moment de développer différentes versions de MariaDB.

La manière la plus facile de le faire est en utilisant les fichiers tar qu'on peut télécharger de downloads.askmonty.org.

Comment éviter qu'un MySQL/MariaDB pré-installé interfère avec vos test

Si MySQL/MariaDB est déjà installé et en train d'être exécuté, vous avez deux options:

  1. Utiliser des serveurs de test MariaDB avec un socket et un port différents.
    • Dans ce cas, il est peut-être mieux de créer une section spécifique pour MariaDB dans votre ~/.my.cnf file.
  2. Arrêtez mysqld avec /etc/rc.d/mysql stop ou mysqladmin shutdown. Notez que vous n'avez pas besoin de désinstaller ou de supprimer MySQL!

Comment créer une distribution binaire (fichier tar)

Voici une courte description de comment générer un fichier tar depuis une distribution source. Si vous avez téléchargé downloaded un fichier binaire, vous pouvez ignorer cette section.

Les étapes pour créer un fichier binaire tar sont:

Vous aurez à ce point un fichier binaire tar avec un nom du type: mariadb-5.3.2-MariaDB-beta-linux-x86_64.tar.gz

Création d'une structure de répertoires pour les différentes installations C

Installez le fichier binaire tar sous /usr/local/ avec les suivants noms des répertoires:

  • mariadb-5.1
  • mariadb-5.2
  • mariadb-5.3

Ce qui précède suppose que vous testez simplement des versions majeures de MariaDB. Si vous êtes en train de tester des version spécifiques, utilisez des noms pour les répertoires tels que mariadb-5.3.2

Une fois les répertoires en place, créez un sym-link nommé mariadb qui vise le répertoire mariadb-XXX que vous êtes en train de tester. Au moment où vous voudriez mettre à l'essai une version différente, vous n'avez qu'à mettre à jour le sym-link.

Exemple:

cd /usr/local
tar xfz /tmp/mariadb-5.3.2-MariaDB-beta-linux-x86_64.tar.gz
mv -vi mariadb-5.3.2-MariaDB-beta-linux-x86_64 mariadb-5.3
ln -vs mariadb-5.3 mariadb

Mise en place du répertoire de données

Lors de la mise en place du répertoire des données, vous avez le choix entre utiliser un répertoire de base de données partagé ou bien, créer un répertoire de base de données unique pour chaque version du serveur. Pour faire un essai, il sera plus facile d' utiliser un répertoire commun. Notez que vous pouvez seulement avoir un serveur mysqld en exécution contre un répertoire de données.

Mise en place d'un répertoire de données commun

Les étapes à accomplir sont:

  1. Créer l'utilisateur de système mysql si vous ne l'avez pas encore fait! (Sous Linux vous le faites avec la commande useradd).
  2. Créer le répertoire (nous l'avons nommé mariadb-data dans l'exemple ci-dessous) ou ajoutez un symlink à un réperoire qui se trouve dans une autre place.
  3. Créer les tables de permission mysql avec mysql_install_db
cd /usr/local/
mkdir mariadb-data
cd mariadb
./bin/mysql_install_db --no-defaults --datadir=/usr/local/mariadb-data
chown -R mysql mariadb-data mariadb-data/*

La raison pour utiliser --no-defaults c'est pour être sûr de ne pas hériter des options incorrectes d'un my.cnf obsolète.

Mise en place des répertoires de données différents

Pour créer un répertoire différent data pour chaque installation:

cd mariadb
./bin/mysql_install_db --no-defaults
chown -R mysql mariadb-data mariadb-data/*

Ceci va créer un répertoire data à l'intérieur du répertoire actuel.

Si vous souhaitez utiliser un autre disque, vous devez faire ceci:

cd mariadb
ln -s path-to-empty-directory-for-data data
./bin/mysql_install_db --no-defaults --datadir=./data
chown -R mysql mariadb-data mariadb-data/*

Exécution d'un serveur MariaDB

Les étapes normales sont:

rm mariadb
ln -s mariadb-5.# mariadb
cd mariadb
./bin/mysqld_safe --no-defaults --datadir=/usr/local/mariadb-data &

Mise en place d'un fichier .my.cnf file pour l'exécution de plusieurs versions principales de MariaDB

Si vous allez faire démarrer/arrêter MariaDB plusieurs fois, vous devez créer un fichier ~/.my.cnf pour les options courantes que vous utilisez

L'exemple suivant montre comment utiliser un TCP-port et un socket non standard (pour ne pas interférer avec un serveur principal MySQL/MariaDB ) et comment mettre en place de différentes options pour chaque serveur principal:

[client]
socket=/tmp/mysql.sock
port=3306
[mysqld]
socket=/tmp/mysql.sock
port=3306
datadir=/usr/local/mariadb-data

[mariadb-5.2]
# Options for MariaDB 5.2
[mariadb-5.3]
# Options for MariaDB 5.3

Si vous créez un fichier ~/.my.cnf , vous devez faire démarrer mysqld à l'aide de --defaults-file=~/.my.cnf au lieu de --no-defaults dans l'exemple ci-dessus.

Comments

Comments loading...