Rubrique précédente: Appliances de base de donnéesRubrique suivante: MYSQLR, MYSQLR64 - Appliance de base de données MySQL prévue pour la réplication


MYSQL5 - Appliance de base de données MySQL

MYSQL5, MYSQL64 : Appliances de base de données MySQL

Aperçu rapide

Catalogue

Système

Catégorie

Appliances de base de données

Volumes d'utilisateur

Oui

Min. mémoire

160 Mo

SE

Linux

Contraintes

non

Questions/commentaires

Poser une question sur le forum

Présentation fonctionnelle

MYSQL est une appliance de base de données basée sur le moteur de base de données MySQL (http://www.mysql.org). Elle permet d'ajouter facilement une base de données quelle que soit l'application.

MYSQL stocke la base de données sur un volume défini par l'application que vous pouvez configurer sur chaque instance MYSQL. MYSQL crée automatiquement une base de données vide lorsqu'elle démarre sur un volume vide.

Nom

Dernière version

SE

MySQL

MYSQL5

2.0.3-1

CentOS 5.5

5.5.8

Ressources

Ressource

Minimum

Maximum

Valeur par défaut

UC

0.10

16

0.40

Mémoire

160 Mo

32 Go

512 Mo

Bande passante

1 Mbit/s

2 Gbits/s

250 Mbits/s

Terminaux

Nom

Dir.

Protocole

Description

in

in

MYSQL

Reçoit les requêtes de base de données MySQL.

log

sortie

CIFS

Système de fichiers réseau pour le stockage du journal d'erreurs. Si ce terminal n'est pas utilisé, il peut rester déconnecté.

MON

sortie

CCE

Envoie des statistiques de performances et d'utilisation des ressources. Ce terminal peut rester déconnecté.

L'interface par défaut est activée. Elle est destinée au diagnostic et au dépannage (via SSH). Les versions futures de cette appliance peuvent désactiver l'accès SSH.

Volumes d'utilisateur

Volume

Description

données

Volume pour le stockage des données de la base de données.

Le volume de données peut éventuellement contenir un fichier my.cnf dans son répertoire supérieur, qui inclut des options de configuration de MYSQL. Pour plus d'informations, reportez-vous à la section Configuration personnalisée. Cette fonctionnalité est disponible dans MYSQL5/64 1.3.3 ou version ultérieure.

Important : Le volume de données doit être exclusivement dédié à l'instance de MySQL (il ne peut pas être partagé avec d'autres appliances).

Propriétés

Nom de propriété

Type

Description

auto_create

Nombre entier

Indique si la base de données doit être créée lorsqu'elle n'existe pas. Valeurs possibles : 1 pour la créer et 0 pour empêcher sa création automatique (pour éviter tout écrasement accidentel en cas de volumes endommagés). Si cette propriété est définie sur 0 et qu'aucune base de données n'existe sur le volume d'utilisateur, l'appliance démarre en mode Maintenance (le démon MySQL ne démarre pas). La valeur par défaut est 1.

error_log_filename

Chaîne

Nom complet du fichier journal d'erreurs, associé au système de fichiers journaux (par exemple, /mysql_logs/my.log). S'il n'est pas spécifié, la journalisation des erreurs est désactivée. Valeur par défaut : (vide).

error_log_level

Chaîne

Niveau de journalisation des erreurs. Valeurs possibles : error, pour ne consigner que les erreurs, et warn, pour consigner les avertissements et les erreurs. Cette propriété n'est pas sensible à la casse. Valeur par défaut : error

timezone

Chaîne

Spécifie le fuseau horaire utilisé dans l'appliance. Si cette propriété est vide, le fuseau horaire reste inchangé. Une liste des fuseaux horaires pris en charge est disponible ici. Valeur par défaut : vide

Important :

Configuration personnalisée

Cette fonctionnalité est disponible dans les versions 1.3.3 et ultérieures de MySQLR.

MYSQL5/64 permet d'utiliser un fichier de configuration MySQL personnalisé qui peut fournir des options de configuration supplémentaires ou remplacer la configuration existante spécifiée dans /etc/my.cnf.

Pour utiliser une configuration personnalisée, créez un fichier nommé my.cnf et placez-le dans le répertoire supérieur du volume de données. Le format du fichier doit respecter la syntaxe du fichier d'options MySQL décrite sur le site Web de MySQL.

Par exemple, vous pouvez utiliser le paramétrage suivant pour optimiser les performances de MYSQL5/64 en cas d'utilisation d'InnoDB (la configuration MYSQL5/64 par défaut est optimisée pour MyISAM). Cet exemple repose sur l'utilisation de 512 Mo de mémoire (valeur par défaut pour MYSQL5/64).

[mysqld]
# Réduisez les tampons MyISAM
key_buffer = 512 Ko
myisam_sort_buffer_size = 512 Ko

# Définissez InnoDB comme le moteur de stockage par défaut (facultatif)
default-storage-engine = INNODB

# Définissez la taille de tampon d'InnoDB
innodb_buffer_pool_size=350M
innodb_log_file_size=128M
innodb_log_buffer_size=4M
innodb_thread_concurrency=8

# Utilisez cette option si le nombre de tables dont vous disposez n'est pas trop important.
Vous éviterez une croissance incontrôlée de l'espace disque logique principal d'innodb que vous ne pouvez pas récupérer.
innodb_file_per_table=1
Compteurs personnalisés

L'appliance MYSQL signale les compteurs personnalisés suivants via le terminal mon.

Les compteurs suivants appartiennent au groupe de compteurs MySql :

Nom du compteur

Description

Aborted Clients

Nombre de clients interrompus par le serveur

Aborted Connections

Nombre de connexions interrompues par le serveur

Bytes Received

Nombre d'octets reçus

Bytes Sent

Nombre d'octets envoyés

Total Connections

Nombre de connexions

Questions

Nombre total de questions

Slow Queries

Nombre de requêtes lentes

Threads Created

Nombre de threads créés

Threads Connected

Nombre de threads connectés

Threads Running

Nombre de threads en cours d'exécution

Max Used Connections

Nombre maximum de connexions utilisées

Open Files

Nombre de fichiers ouverts

Admin Commands

Nombre de commandes d'administration

Alter Table Commands

Nombre de commandes de modification de table

Analyze Commands

Nombre de commandes d'analyse

Backup Table Commands

Nombre de commandes de sauvegarde de table

Change DB Commands

Nombre de commandes de modification de base de données

Change Master Commands

Nombre de commandes de modification de maître

Check Commands

Nombre de commandes de contrôle

Commit Commands

Nombre de commandes de validation

Create DB Commands

Nombre de commandes de création de base de données

Create Function Commands

Nombre de commandes de création de fonction

Create Index Commands

Nombre de commandes de création d'index

Create Table Commands

Nombre de commandes de création de table

Delete Commands

Nombre de commandes de suppression

Drop DB Commands

Nombre de commandes de suppression de base de données

Drop Function Commands

Nombre de commandes de suppression de fonction

Drop Index Commands

Nombre de commandes de suppression d'index

Drop Table Commands

Nombre de commandes de suppression de table

Flush Commands

Nombre de commandes de vidage

Grant Commands

Nombre de commandes d'attribution

Insert Commands

Nombre de commandes d'insertion

Insert Select Commands

Nombre de commandes d'insertion de la sélection

Kill Commands

Nombre de commandes d'arrêt

Load Commands

Nombre de commandes de chargement

Load Master Table Commands

Nombre de commandes de chargement de table maître

Lock Tables Commands

Nombre de commandes de verrouillage de table

Optimize Commands

Nombre de commandes d'optimisation

Purge Commands

Nombre de commandes de purge

Rename Table Commands

Nombre de commandes de renommage de table

Repair Commands

Nombre de commandes de réparation

Replace Commands

Nombre de commandes de remplacement

Replace Select Commands

Nombre de commandes de remplacement de la sélection

Reset Commands

Nombre de commandes de réinitialisation

Restore Table Commands

Nombre de commandes de restauration de table

Revoke Commands

Nombre de commandes de retrait

Rollback Commands

Nombre de commandes d'annulation

Select Commands

Nombre de commandes de sélection

Set Option Commands

Nombre de commandes de définition d'option

Truncate Commands

Nombre de commandes de troncation

Unlock Tables Commands

Nombre de commandes de déverrouillage de tables

Update Commands

Nombre de commandes de mise à jour

Messages d'erreur

Les messages suivants peuvent s'afficher dans le fichier journal de l'appliance ou dans le journal système du contrôleur de grille lorsque l'appliance ne parvient pas à démarrer :

Application simple à deux niveaux

Appliances en cours d'utilisation :

Les requêtes client arrivent sur la passerelle in1. La passerelle envoie les requêtes au serveur web1, qui les traite. Lorsque des scripts (par exemple, Perl ou PHP) sur le web1 doivent accéder à des données permanentes, ils utilisent l'appliance db1 via le terminal out du serveur web1. L'appliance db1 est configurée pour stocker ses fichiers journaux dans le répertoire racine du partage fourni par les journaux.

Les administrateurs se connectent à la passerelle admin à l'aide d'un navigateur pour afficher les fichiers journaux MySQL. La passerelle admin envoie les requêtes à l'appliance NAS de journaux.

Exemple de configuration de propriété :

Nom de propriété

Value (Valeur)

Commentaires

auto_create

1

Crée la base de données si les volumes sont vides.

error_log_filename

/my.log

Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux.

error_log_level

error

Niveau de journalisation des erreurs

Remarque : Le volume de données doit également être configuré sur l'appliance db1 et l'appliance de journaux. Pour créer des volumes virtuels d'application pouvant être utilisés ici, reportez-vous au Manuel de l'utilisateur de la grille.

Application évolutive à deux niveaux

Le diagramme suivant affiche une utilisation standard de l'appliance MySQL dans une application Web à deux niveaux dans laquelle la base de données est utilisée pour partager l'état et les données entre plusieurs serveurs Web à charge équilibrée. Par ailleurs, dans cet exemple, il existe une entrée distincte pour la maintenance, via laquelle un administrateur peut se connecter et accéder à la base de données à des fins de maintenance, ainsi qu'une autre entrée via laquelle un administrateur peut se connecter et afficher le journal d'erreurs MySQL.

Appliances en cours d'utilisation :

La requête client arrive sur la passerelle utilisateur. Cette dernière envoie les requêtes à l'équilibreur de charge web_lb, qui les transmet à un des serveurs Web web1 et web2. Les serveurs Web accèdent à la base de données db.

La base de données db écrit son journal d'erreurs dans l'appliance de journaux via le terminal de journal. Un administrateur peut, par ailleurs, se connecter à l'appliance de journaux via la passerelle de journal et afficher les fichiers journaux d'erreurs de base de données.

En outre, un administrateur peut se connecter via SSH au serveur admin, par le biais de la passerelle maint. A partir du serveur admin, l'administrateur peut accéder à la base de données db pour consulter des statistiques ou modifier le schéma de base de données. Le serveur admin peut accéder à Internet via la passerelle gway pour, par exemple, télécharger une version plus récente des bibliothèques ou le schéma de base de données.

Exemple de configuration de propriété :

Nom de propriété

Valeur

Notes

auto_create

1

Crée la base de données si les volumes sont vides.

error_log_filename

/my.log

Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux.

error_log_level

error

Niveau de journalisation des erreurs

Remarque : Le volume de données doit également être configuré sur l'appliance db ainsi que sur l'appliance de journaux.

Les appliances maint, admin, gway et log ne sont pas nécessaires au fonctionnement de l'application à deux niveaux. Si vous disposez du serveur admin, celui-ci peut avoir des tâches cron pour le nettoyage de la base de données, l'envoi de courriels, etc.

Notes

Logiciels Open Source et tiers utilisés au sein de l'appliance

MYSQL5 utilise les packages Open Source tiers suivants en plus des packages Open Source tiers utilisés par sa classe de base LUX6.

Logiciel

Version

Modifié

Licence

Notes

libaio

0.3.107-10

Non

LGPLv2.1

N/D

MySQL-client

5.5.28-1

Non

GPLv2

N/D

MySQL-server

5.5.28-1

Non

GPLv2

N/D

MySQL-shared-compat

5.5.28-1

Non

GPLv2

N/D

perl

5.12.2-1

Non

Artistic

N/D

perl-DBD-MySQL

3.0007-2

Non

Artistic

N/D

perl-DBD-SQLite

1.29-1

Non

Artistic

N/D

perl-DBI

1.615-1

Non

Artistic

N/D

perl-DBIx-Simple

1.32-1

Non

Artistic

N/D

samba-client

3.5.10-125

Non

GPLv2

N/D

samba-common

3.5.10-125

Non

GPLv2

N/D

libsmbclient

3.5.10-125

Non

GPLv2

N/D