MySQL InnoDB Cluster, qui combine les technologies MySQL pour vous permettre de déployer et d'administrer une solution intégrée complète de haute disponibilité pour MySQL. Ce contenu est un aperçu de haut niveau d'InnoDB Cluster.
Un cluster InnoDB se compose d'au moins trois instances de serveur MySQL et offre des fonctionnalités de haute disponibilité et de mise à l'échelle. InnoDB Cluster utilise les technologies MySQL suivantes :
MySQL Shell, qui est un client avancé et un éditeur de code pour MySQL.
MySQL Server et Group Replication, qui permet à un ensemble d'instances MySQL de fournir une haute disponibilité. InnoDB Cluster fournit une méthode alternative, facile à utiliser, de programmation pour travailler avec la réplication de groupe.
MySQL Router, un middleware léger qui fournit un routage transparent entre votre application et InnoDB Cluster.
Ci-dessous le script utilisé dans la vidéo
MySQL Shell
Serveur MySQL min 3 serveurs
Mysql Router comme loadbalancer
wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
yum installer mysql-shell -y
Installez MysqlRouter uniquement sur le serveur d'applications à partir du dépôt yum.
miam installer mysql-shell -y
requêtes d'installation sudo mysqlsh –pym pip
sudo yum install mysql-router -y
mysqlsh –uri example@sqldat.com
Pas_si_sécurisé1 !
Pas_si_sécurisé1 !
Faites ceci sur toutes les instances
dba.configureInstance()
fournir le mot de passe
2
innodbcluster
Strong_Password1 !
dba.checkInstanceConfiguration(‘example@sqldat.com’)
\c example@sqldat.com:3306
var mycls=dba.createCluster('MUGHEES_CLS')
mycls.describe()
mycls.status()
mycls.SetupRouterAccount( 'monrouteur')
Le premier prmry :
mycls.addinstance(‘mysql2:3306’)
mycls.addinstance(‘mysql3:3306’)
Sur le serveur du routeur :
mysqlrouter –bootstrap example@sqldat.com -d myrouter_idc –account=myrouter
mysqlrouter –bootstrap example@sqldat.com –user mysqlrouter
##############Serveurs :mysql1:####################
CREATE USER 'myadmin'@'%' IDENTIFIED BY 'Strong_Password1 !'
Accordez tous les privilèges sur *.* à myadmin'@'%' avec l'option d'octroi ;
mysqlsh –uri example@sqldat.comost
\sql
select @@hostname;
CREATE DATABASE school;USE school;
CREATE TABLE if not exist school.student(stndid int primary key auto_increment,stdname varchar(100),phone int, classid int);
INSERT school.student(stdname,phone,classid) values('Aslam',123456977,7);
INSERT school.student(stdname,phone,classid) values('Mughees' ,123456977,8);
INSERT school.student(stdname,phone,classid) values('Ahmed',123456977,9);
SELECT * FROM school.student;
sélectionnez @@hostname ;
####################Serveurs :mysq12####################
exemple mysqlsh@sqldat.com
\sql
sélectionnez @@hostname
SELECT * FROM école.élève ;
while [ 1 ]do
sleep 1
docker exec -it mysql-client4 mysql -h 192.168.56.110 -P 6447 -uinnodbcluster -pStrong_Password1 ! -e "sélectionnez @@nom_hôte ;"
terminé