3.6.2. MySQL

Vous devez utiliser MySQL version 5.6.12 ou supérieure.

Il est possible de vérifier la version utilisée en utilisant la commande suivante :

mysql -V

3.6.2.1. Installer

Windows

Téléchargez l’installeur MSI de MySQL sur le [site Web de MySQL](https://dev.mysql.com/downloads/windows/installer/). La taille est variable selon la version.

MySQL a un installeur Windows standard. Il est recommandé de sélectionner les options d’installation par défaut à moins d’avoir des besoins spécifiques.La suite de cette documentation suppose que vous avez installé MySQL dans C:\mysql. Si ce n’est pas le cas, ajustez les chemins d’accès en conséquence.

Linux/Mac OS X

Les instructions d’installation de paquets données précédemment devraient avoir installé MySQL sur votre machine. Si ce n’est pas le cas, exécutez la commande :

mysql_secure_installation

et suivez les instructions affichées.

Si vous avez installé MySQL manuellement plutôt qu’avec le gestionnaire de paquets, assurez-vous que le serveur est lancé au démarrage de la machine.

3.6.2.2. Création de la base de données

Vous devez créer une base de données pour utiliser Bugzilla. Lancez le client en ligne de commande mysql et saisissez la ligne suivante :

::

CREATE DATABASE IF NOT EXISTS bugs CHARACTER SET = “utf8”;

La commande précédente permet de créer la base bugs si celle-ci n’existe pas déjà.

3.6.2.3. Ajout d’un utilisateur

Vous devez ajouter un nouvel utilisateur MySQL pour Bugzilla. Lancez le client en ligne de commande mysql et saisissez le texte suivant :

GRANT SELECT, INSERT,
UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.*
TO bugs@localhost IDENTIFIED BY '$DB_PASS';

FLUSH PRIVILEGES;

Vous devez remplacer $DB_PASS par un mot de passe suffisamment fort que vous avez choisi. Notez ce mot de passe quelque part.

La commande ci-dessus permet à un compte appelé bugs de se connecter sur la machine locale, localhost. Modifiez la command en conséquence pour s’ajuster à votre configuration si vous vous connectez à partir d’une autre machine ou si vous utilisez un utilisateur différent.

3.6.2.4. Changer la configuration

Pour changer la configuration de MySQL, vous devez éditer votre fichier de configuration MySQL

qui se trouve dans :

  • Red Hat/Fedora : /etc/my.cnf

  • Debian/Ubuntu : /etc/mysql/my.cnf

  • Windows : C:\mysql\bin\my.ini

  • Mac OS X : /etc/my/cnf

Allow Large Attachments and Many Comments

Par défaut, MySQL ne vous autorisera à insérer dans la base de données, que des objets plus petits que 1 Mo.

Les fichiers joints peuvent être plus gros que cela. De même, Bugzilla concatène tous les commentaires d’un bogue dans un seul champ pour la recherche plein texte, et la somme de tous les commentaires d’un bogue sera vraisemblablement supérieure à 1 Mo.

Nous vous recommandons d’autoriser au moins des packets de 16 Mo en ajoutant le paramètre max_allowed_packet dans votre fichier de configuration MySQL dans la section [mysqld], comme ceci (notez que c’est M et pas MB ou Mo) :

[mysqld]
# Allow packets up to 16M
max_allowed_packet=16M

Autoriser les mots courts dans les index texte intégral

Par défaut, les mots doivent avoir au moins quatre caractères afin d’être indéxés par les index texte intégral de MySQL. Ceci fait que beaucoup de mots clés spécifiques peuvent être manqués, y compris cc, ftp et uri.

MySQL peut être configuré pour indexer ces mots en définissant le paramètre ft_min_word_len pour la taille minimale des mots à indexer.

[mysqld]
# Allow small words in full-text indexes
ft_min_word_len=2

3.6.2.5. Autoriser la table des fichiers joints à dépasser les 4 Go

Ceci est une configuration optionnelle pour des installations de Bugzilla que l’on s’attend à voir devenir très grosses et doit être fait après que Bugzilla a été complètement installé.

Par défaut, MySQL limitera la table à 4 Go. Cette limite est présente même si le système d’exploitation sur lequel est exécuté MySQL n’a pas cette limite. Pour définir une limite plus grande, lancez le client en ligne de commande mysql et saisissez ce qui suit en remplaçant $bugs_db par le nom de votre base de données (qui est bugs par défaut) :

 USE $bugs_db;

 ALTER TABLE attachments AVG_ROW_LENGTH=1000000, MAX_ROWS=20000;

La commande ci-dessus changera la limite à 20 Go. MySQL devra faire une copie temporaire de toute la table pour changer la limite, donc idéalement ceci doit être fait quand la table des fichiers joints est encore petite.

Note

Si vous avez défini dans Bugzilla le paramètre permettant de stocker les gros fichiers joints sur le disque dur, le changement ci-dessus n’aura aucun effet.


Cette documentation contient très probablement des bogues ; si vous en découvrez, veuillez les signaler ici.