Déployer 1 cluster MySQL avec 2 commandes
juillet 16, 2019
Dans cette courte vidéo, je vais te montrer comment créer un cluster MySQL de 3 nœuds avec simplement 2 commandes.
Articles liés
- Tutoriel – Déployer MySQL 8.0 InnoDB Cluster
- MySQL InnoDB Cluster – HowTo #1 – Monitor your cluster
- MySQL InnoDB Cluster – HowTo #2 – Validate an instance
- MySQL InnoDB Cluster – Easy Recovering and provisioning
- MySQL InnoDB Cluster – Recovering and provisioning with MySQL Enterprise Backup
- MySQL InnoDB Cluster – Recovering and provisioning with mysqldump
Ressources
- MySQL InnoDB Cluster – User Guide
- Optimized MySQL Server Docker images – Created, maintained and supported by the MySQL team at Oracle
Thanks for using MySQL!
Watch my videos on my YouTube channel and subscribe.
Thanks for using HeatWave & MySQL!
Architecte Solution Cloud chez Oracle
MySQL Geek, Architecte, DBA, Consultant, Formateur, Auteur, Blogueur et Conférencier.
—–
Blog: www.dasini.net/blog/en/
Twitter: https://twitter.com/freshdaz
SlideShare: www.slideshare.net/freshdaz
Youtube: https://www.youtube.com/channel/UC12TulyJsJZHoCmby3Nm3WQ
—–
Encore une excellente preuve de la puissance de MySQL 😉
Olivier est-il possible de gérer un cluster innodb (group replication, configuré via les fichiers de conf et qui fonctionne très bien) déjà en production avec mysql shell. J’ai essayé différentes commandes mais j’ai systématiquement des messages d’erreurs me disant que l’instance est « unmanaged » et que la function n’est pas disponible :(.
Merci d’avance pour vos conseils.
Hello,
normalement oui 🙂
J’ai un tuto en 5.7:
http://dasini.net/blog/2017/04/10/adopte-un-cluster-mysql-group-replication/
Mais il doit dater un peu…
Voici le lien de la doc qui devrait t’aider:
https://dev.mysql.com/doc/refman/8.0/en/mysql-innodb-cluster-from-group-replication.html
Olivier
Voici un exemple avec la version 8.0:
$ mysqlsh root@localhost:22213
MySQL Shell 8.0.17
Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
Type ‘\help’ or ‘\?’ for help; ‘\quit’ to exit. to set one.
Creating a session to ‘root@localhost:22213’
Fetching schema names for autocompletion… Press ^C to stop.
Your MySQL connection id is 33
Server version: 8.0.17 MySQL Community Edition
No default schema selected; type \use
MySQL localhost:22213 ssl JS > var cluster = dba.createCluster(‘ic1’, {adoptFromGR: true});
A new InnoDB cluster will be created based on the existing replication group on instance ‘localhost:22213’.
Creating InnoDB cluster ‘ic1’ on ‘localhost:22213’…
Adding Seed Instance…
Adding Instance ‘127.0.0.1:22213’…
Adding Instance ‘127.0.0.1:22214’…
Adding Instance ‘127.0.0.1:22215’…
Resetting distributed recovery credentials across the cluster…
Cluster successfully created based on existing replication group.
Ca marche nickel! 🙂
Bonjour Olivier,
Tout d’abord merci pour le partage de vos connaissances que j’exploite pour identifier une solution HA pour mon besoin.
J’aurai quelques questions à propos du HA MySql:
– sauf erreur de ma part il n’y a pas d’image docker officielle de mysql-shell, est-ce une contre indication de la part d’Oracle /MySql ?
– dans votre vidéo le mysql-shell semble être installé en local (sur votre host docker) mais vos containers semblent pas d’exposer de ports sur le host. Du coup je me demande comment vous avez procédé ?
– la soultion de MySQL Cluster CGE est-elle disponible avec la version community de MySql ou est-ce une offre commerciale ?
Bonne soirée
Laurent
Bonjour Laurent,
merci pour tes encouragements.
Tu as raison, nous n’avons pas construit d’image docker MySQL Shell.
Pas de raisons particulières à ma connaissance.
Quel est le besoin ?
Effectivement je ne suis pas obligé d’avoir MySQL Shell sur les instances MySQL, même si je recommande de déployer MySQL Shell systématiquement avec les instances MySQL.
En fait dans ce cas précis j’utilise mon fichier /etc/hosts qui fait le mapping entre le nom des instances MySQL Docker et leur adresses IP
ex:
172.19.0.11 mysql_8.0_node1
172.19.0.12 mysql_8.0_node2
172.19.0.13 mysql_8.0_node3
MySQL Cluster CGE c’est la version commerciale de MySQL NDB Cluster qui est donc le pendant communautaire, open source
https://dev.mysql.com/doc/refman/8.0/en/mysql-cluster.html
Cette version open source existe également en image Docker:
https://hub.docker.com/r/mysql/mysql-cluster
Olivier