Comment activer TokuDB dans MariaDB
Contents
TokuDB is available on the following distributions:
Distribution | Introduced |
---|---|
CentOS 6 64-bit and newer | MariaDB 5.5.36 and MariaDB 10.0.9 |
Debian 7 "wheezy"64-bit and newer | MariaDB 5.5.33 and MariaDB 10.0.5 |
Fedora 19 64-bit and newer | MariaDB 5.5.33 and MariaDB 10.0.5 |
openSUSE 13.1 64-bit and newer | MariaDB 5.5.41 and MariaDB 10.0.15 |
Red Hat 6 64-bit and newer | MariaDB 5.5.36 and MariaDB 10.0.9 |
Ubuntu 12.10 "quantal" 64-bit and newer | MariaDB 5.5.33 and MariaDB 10.0.5 |
Note: La version de TokuDB fournie par MariaDB.org diffère légèrement de celle fournie par Tokutek. Veuillez lire l'article Différences dans TokuDB avant d'utiliser TokuDB !
Cette section détaille comment installer et activer TokuDB.
Installer TokuDB
Avant de mettre à jour TokuDB, le serveur doit être proprement arrêté. Si le serveur n'à pas été arrêté proprement, TokuDB ne pourra pas se lancer. Voir MDEV-6173.
Installer TokuDB sur Fedora, RedHat et CentOS
Installer MariaDB en premier en suivant les instruction de l'article Installer MariaDB avec YUM.
MariaDB starting with 5.5.34
Depuis MariaDB 5.5.34 et MariaDB 10.0.6, le moteur de stockage TokuDB est inclus dans la paquet MariaDB-server
.
Il suffis d'installer MariaDB puis d'activer le plugin TokuDB tel que décris dans la section Activer TokuDB de cet article.
MariaDB 5.5.33
Dans MariaDB 5.5.33 et MariaDB 10.0.5, TokuDB est dans un paquet RPM séparé nommé MariaDB-tokudb-engine
qui s'installe de la manière suivante :
sudo yum install MariaDB-tokudb-engine
Après avoir installé le paquetage, activer le plugin TokuDB tel que décris dans la section Activer TokuDB de cet article.
Installer TokuDB sur Ubuntu et Debian
Installer en premier MariaDB en suivant les instruction de l'article Comment installer MariaDB par paquets .deb.
Sur Ubuntu, TokuDB est disponible sur les versions 64-bit du système à partir d'Ubuntu 12.10. Sur Debian, TokuDB est disponible sur les versions 64-bit du système à partir de Debian 7.
MariaDB starting with 5.5.34
Depuis MariaDB 5.5.34 et MariaDB 10.0.6, TokuDB est inclus dans le paquet mariadb-server-x.x
(où x.x
est la version majeure de MariaDB, par exemple 10.0 ou 5.5).
Il suffis d'installer MariaDB puis d'activer le plugin TokuDB tel que décris dans la section Activer TokuDB de cet article.
MariaDB 5.5.33
Dans MariaDB 5.5.33 et MariaDB 10.0.5, TokuDB est dans un paquet séparé nommé mariadb-tokudb-engine-x.x
(où x.x
est la version majeure de MariaDB).
Le paquet s'installe de la manière suivante (exemple sur 5.5
) :
sudo apt-get install mariadb-tokudb-engine-5.5
Après avoir installé le paquet, activez le plugin TokuDB tel que décris dans la section Activer TokuDB de cet article.
Vérifier le support des Transparent HugePages sur Linux
La documentation de TokuDB dit :
La fonctionnalité Transparent hugepages est une fonctionnalité inclue dans les versions récentes du noyau Linux, elle pose problème pour le suivi du calcul de l'utilisation mémoire dans TokuKV, une sur-allocation mémoire pouvant en résulter. Si cette fonctionnalité est activée, TokuKV ne démarrera pas et elle devra être désactivée.
Il est possible de vérifier l'état de Transparent Hugepages de cette manière :
cat /sys/kernel/mm/transparent_hugepage/enabled [always] madvise never
Si le chemin n'existe pas, cela signifie que le noyau ne possède pas la fonctionnalité.
Pour les désactiver au démarrage, passer l'argument transparent_hugepage=never
au noyau au niveau du chargeur de démarrage (GRUB, LILO, etc.).
Il est possible de les désactiver en faisant :
echo never > /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag
Pour SUSE, il faut ajouter transparent_hugepage=never
à la fin des paramètres optionnels de ligne de commande du noyau, par exemple après showopts
. Le paramètre sera pris en compte au prochain redémarrage.
Pour plus d'informations, lire http://unix.stackexchange.com/questions/99154/disable-transparent-hugepages
Activer TokuDB
La configuration par défaut de MariaDB contient une section pour TokuDB.
Pour activer TokuDB, il suffis de retirer le marqueur de commentaire'#' situé devant l'option plugin-load=ha_tokudb.so
dans la section TokuDB.
Une section TokuDB pour MariaDB 5.5 ressemble à cela (l'option plugin-load-add
est utilisée à partir de MariaDB 10.0) :
# See https://mariadb.com/kb/en/how-to-enable-tokudb-in-mariadb/ # for instructions how to enable TokuDB # # See https://mariadb.com/kb/en/tokudb-differences/ for differences # between TokuDB in MariaDB and TokuDB from http://www.tokutek.com/ # Note, that only one plugin-load option will be recognized by the # MariaDB server. If you uncomment the line below, make sure that # you don't also have plugin-load options in your other # my.cnf files. Otherwise, add ha_tokudb.so to the existing # plugin-load option, instead of uncommenting the line below. #plugin-load=ha_tokudb.so
Par défaut, l'option plugin-load
est commentée.
Il suffis de la dé-commenter tel que dans l'exemple ci-dessus et redémarrer MariaDB pour activer TokuDB.
Activer TokuDB sur Fedora
Plutôt que rajouter une section TokuDB dans le fichier de configuration principal my.cnf
, elle est située dans dans un fichier séparé : /etc/my.cnf.d/tokudb.cnf
Activer TokuDB sur Ubuntu et Debian
Plutôt que rajouter une section TokuDB dans le fichier de configuration principal my.cnf
, elle est située dans dans un fichier séparé : /etc/mysql/conf.d/tokudb.cnf
Activer TokuDB manuellement depuis le client mysql en ligne de commande
De manière générale, il est recommandé d'utiliser l'une des méthodes ci-dessus pour activer le moteur de stockage TokuDB mais il est également possible de l'activer manuellement comme n'importe quel autre plugin.
Pour ce faire, lancer le client mysql
en ligne de commande et se connecter MariaDB avec un utilisateur ayant le privilège SUPER
puis exécuter la commande suivante :
INSTALL SONAME 'ha_tokudb';
TokuDB sera installé définitivement et pourra être retiré en utilisant UNINSTALL SONAME.
Activer temporairement TokuDB au démarrage de MariaDB
Pour simplement tester TokuDB, il faut démarrer le démon mysqld
avec la commande suivante :
mysqld --plugin-load=ha_tokudb --plugin-dir=/usr/local/mysql/lib/mysql/plugin