La base de données MySQL vous permet de combiner plusieurs ordinateurs dans un cluster qui agit comme une base de données MySQL unique. Il ya un minimum de matériel spécifique ou des exigences d' autres logiciels qu'une grande quantité de RAM et MySQL 5.0 ou supérieur . Bien sûr , plusieurs processeurs et plus rapide permettra d'améliorer le rendement , si elles sont disponibles . Les données en temps réel pour le cluster seront stockées entièrement dans la mémoire dans une architecture shared-nothing . Le cluster MySQL devrait fonctionner sur son propre sous-réseau parce que la communication entre les nœuds ne sont pas cryptées , et donc le cluster peut avoir l'usage exclusif de la bande passante . Les bases
Le cluster MySQL est configuré indépendamment du serveur MySQL et est conçu avec aucun point de défaillance unique . Chaque élément doit avoir son propre espace mémoire et disque et stockage partagé n'est ni recommandé ni supporté . Chaque ordinateur du cluster aura un ou plusieurs processus en cours à ce sujet. Ces processus (appelés nœuds ) incluent un serveur MySQL , un nœud de données, un serveur de gestion et les programmes d'accès aux données spécialisées. Configuration implique la configuration de chaque noeud individuel et la mise en place des liens de communication individuels. Toutes les données du cluster dans son ensemble se trouve dans un fichier de configuration géré par le nœud de gestion .
Doit avoir chaque ordinateur exécutant un noeud SQL avec MySQL est installé. Gestion et données nœuds ne nécessitent pas un binaire MySQL, mais ne nécessitent le démon du serveur de gestion ( ndb_mgmd ) pour le nœud de gestion ou le démon de noeud de données ( ndbd ) pour les nœuds de données . Il est recommandé d'installer le client de gestion ( ndb_mgm ) sur l'hôte du serveur de gestion.
Le Cluster utilise le moteur de stockage de NDBCLUSTER . NDBCLUSTER est en mémoire , la haute disponibilité , le moteur de stockage de données persistant qui peut être configuré avec une gamme de basculement et les options d'équilibrage de charge . Lorsque les données sont stockées dans le moteur de stockage NDBCLUSTER , les tables sont stockées dans les nœuds de données . Les tables sont alors accessibles depuis tous les autres serveurs du cluster MySQL . Les données enregistrées de cette façon peuvent être inversés et le cluster peut gérer les échecs de nœuds individuels avec seulement un petit nombre de transactions impacté en raison de la perte de l'état de la transaction.
Création d' un cluster
Télécharger des fichiers binaires pour le serveur MySQL, le NDB Cluster - moteur de stockage , NDB Cluster - gestion de stockage du moteur , NDB Cluster - outils de base du moteur de stockage , NDB Cluster - outils supplémentaires de moteurs de stockage . Tous les logiciels de cluster doit avoir le même numéro de version.
Noeud Chacun de données ou un noeud SQL a besoin d'un fichier " my.cnf " qui fournit une " connectstring " qui raconte le serveur où se trouve le noeud de gestion , et un ligne indiquant au serveur MySQL pour permettre au moteur de stockage NDBCLUSTER . Le nœud de gestion a besoin d'un fichier " config.ini " qui indique combien de répliques à entretenir, la quantité de mémoire à allouer à des données et des index sur chaque nœud de données , où trouver les noeuds de données , où enregistrer les données sur les disques sur chaque nœud de données et où trouver les noeuds SQL.
Chaque processus de nœud de cluster doivent être lancées séparément sur l'hôte où il réside. Le nœud de gestion doit être démarré en premier, puis les nœuds de données sont démarrés , la dernière étape consiste à démarrer les nœuds SQL
Pour démarrer le type de nœud de gestion de la commande : .
Ndb_mgmd -f /var /lib /mysql- cluster /config.ini
Démarrez les nœuds de données avec la commande " ndbd " et utilisez le script de démarrage fourni avec MySQL binaries pour commencer les nœuds SQL.
test de la configuration en tapant la commande " ndb_mgm . " Une fois tous les nœuds sont lancés , vous pouvez travailler avec les bases de données et des objets dans le cluster MySQL.