1. Généralités

Bon vieux dicton.:Ne fais pas semblant de comprendre ce qui n'est pas familier,Soyez honnête,Savoir, c'est savoir,Ne pas savoir, c'est ne pas savoir.

Revenons à nos moutons,Aujourd'hui, parlons MysqlComment construire un Cluster maître - esclave de séparation de lecture - écriture,Et parler de la façon de l'utiliser MyCat Pour accéder à ceciMysqlCluster de séparation lecture - écriture.

2. Introduction au scénario

ServeurA IP:192.168.1.22

ServeurB IP:192.168.1.12

ServeurA Et ServeurB Tout est installé.Mysql,Et l'initialisation est terminée,À propos deMysqlInCentOS7Installation,Voir mon autre article《MyCatConstruction rapide de》.

ServeurBEn tant que Mysql Services principaux,ServeurAEn tant que Mysql Depuis le serveur.

MyCat Installé sur le serveurAAllez..MyCatVoir aussi mon autre article pour l'installation de《MyCatConstruction rapide de》.

3.  MysqlConstruction d'un Cluster maître - esclave de séparation lecture - écriture

3.1 Modifier ServeurB(Seigneur.)Profil

# vim /etc/my.cnf

3.2 Redémarrer le serveurB(Seigneur.)De Mysql Services

# systemctl restart mysqld

3.3 Modifier ServeurA(De)Profil

# vim /etc/my.cnf

3.4 Redémarrer le serveurA(De)De Mysql Services

# systemctl restart mysqld

3.5 In ServeurB(Seigneur.) Créer un compte de synchronisation et autoriser

# mysql -u root -p

mysql> create user 'repl'@'%' identified by '[email protected]';

mysql> grant replication slave on *.* to 'repl'@'%';

mysql> flush privileges;

3.6 In ServeurB(Seigneur.) Effectuer le fonctionnement de la table de verrouillage sur

# mysql -u root -p

mysql> flush tables with read lock;

3.7 In ServeurB(Seigneur.)On le trouve. log-bin Emplacement

# mysql -u root -p

mysql> show master status;

3.8 Oui. ServeurB(Seigneur.)De mysql Copie des données à  ServeurA(De)

Sauvegarde des données

# mysqldump --all-databases --master-data > dbdump.db -uroot -p

Attention!: Je viens de verrouiller la montre. mysql Le client ne quitte pas ,Rouvrir une fenêtre!!!

Transfert de fichiers de données

# scp dbdump.db [email protected]:/home

3.9 In ServeurA(De)Restauration mysql Données

# cd /home

# mysql < dbdump.db -uroot -p

Attention!:Deux serveursmysql La version doit être cohérente , Sinon, une erreur peut être signalée. !!!

3.10 Oui. ServeurB(Seigneur.) Opération de verrouillage de la table annulée

mysql> unlock tables;

3.11 In ServeurA(De) Configuration de la synchronisation maître - esclave sur

# mysql -u root -p

mysql> change master to
-> master_host='192.168.1.12',
-> master_user='repl',
-> master_password='[email protected]',
-> master_log_file='zhuifengren_log.000001',
-> master_log_pos=1432;

mysql> start slave;

3.12 Authentication plugin 'caching_sha2_password' reported error Résolution des erreurs

Si les données maître - esclave ne sont pas synchronisées, Peut être visualisé à partir de la bibliothèque (ServeurA) Journal de synchronisation pour

# cat /var/log/mysqld.log

S'il y a une erreur comme suit: , Décrit ce qui a été créé précédemment repl Il y a un problème avec le chiffrement du mot de passe du compte :

Authentication plugin 'caching_sha2_password' reported error: Authentication requires secure connection. Error_code: MY-002061

Solutions:

Entrée ServeurB(Seigneur.)DemysqlClient,Modifier la façon dont le mot de passe de l'utilisateur est chiffré

# mysql -u root -p

mysql> alter user 'repl'@'%' identified WITH sha256_password by '[email protected]';
mysql> grant replication slave on *.* to 'repl'@'%';
mysql> flush privileges;

Puis entrez ServeurA(De) Redémarrer la synchronisation maître - esclave

# mysql -u root -p

mysql> stop slave;

mysql> start slave;

Résolution de problèmes!!!

4. MyCat Configurer la séparation lecture - écriture

4.1 Modifier comme précédemmentMyCatConfiguration

# cd /home/mycat/conf

# vim schema.xml

Parmi eux Lire la bibliothèquereadHost L'étiquette est écrite dans  Écrire une bibliothèquewriteHost À l'intérieur de l'étiquette.

dataHost Dans l'étiquette balance Les attributs ont la signification suivante: :( Extrait de MyCat Guide faisant autorité sur le site Web )

balance Propriétés Type d'équilibrage de charge,Les valeurs actuelles sont: 4 Espèce:

1. balance="0", Ne pas activer le mécanisme de séparation lecture - écriture,Toutes les lectures sont envoyées à writeHost Allez..

2. balance="1",Tous readHost Avec stand by writeHost Participation select équilibrage de la charge pour les déclarations,En termes simples, Quand double   Mode maître double esclave (M1->S1,M2->S2,Et M1 Avec M2 Préparation mutuelle),Dans des conditions normales,M2,S1,S2 Tous impliqués select équilibrage de la charge pour les déclarations.

3. balance="2",Toutes les opérations de lecture sont aléatoires à writeHost、readhost Distribution.

4. balance="3",Toutes les demandes de lecture sont distribuées au hasard à wiriterHost Correspondant readhost Mise en œuvre,writerHost Pas de stress de lecture, Attention! balance=3 Seulement 1.4  Et plus tard ,1.3 Non..

4.2 RedémarrerMyCat

# cd /home/mycat/bin

# ./mycat stop

# ./mycat start

5. Aperçu général

On a parlé aujourd'hui Mysql Construction d'un Cluster maître - esclave de séparation lecture - écriture,Et MyCat Comment intégrer Mysql Cluster de séparation lecture - écriture,J'espère que ça vous aidera dans votre travail.

Merci de m'aider、Commentaires、Avant、Attention! :)

Concentrez - vous sur la conversation des chasseurs de ventJava,Mise à jour quotidienneJavaMarchandises sèches.

MysqlLa construction d'un cluster de séparation lecture - écriture etMyCat Plus d'articles sur la consolidation

  1. CentosEn bas.Redis Mise en place d'un Cluster pour réaliser la séparation lecture - écriture

    CentosEn bas.Redis Construction d'une architecture maître - esclave Objectifs de construction :En raison de la configuration inférieure de votre ordinateur portable,Simuler une architecture maître - esclave entre deux machines,Noeud maîtreRedis Utilisé principalement pour écrire des données , Données écrites au noeud maître Redis, Et à partir du noeud ...

  2. centos MySQLConfiguration maître - esclave ntsysv chkconfig setupLes ordres ConfigurationMySQL Maître et esclave Koshell MySQLSauvegarde killLes ordres pidDocumentation discuz! Séparation lecture - écriture de la base de données du Forum Double construction principale mysql.history Leçon 29

    centos  MySQLConfiguration maître - esclave ntsysv   chkconfig  setupLes ordres  ConfigurationMySQL Maître et esclave Koshell  MySQLSauvegarde  killLes ordres  pidDocumentation  discuz! Nombre de forums ...

  3. DockerConstructionMySQLGroupe maître - esclave,Basé surGTID

    Écris devant. ConstructionMySQL Séparer le cluster maître - esclave en lecture - écriture , Non utilisé ici binlogComment,UtiliséGTIDComment Voir mon code source Github https://github.com/hellxz/mysql-cluster-do ...

  4. Mysql Construction d'un environnement de Cluster

    Dans l'article précédent, j'ai écrit surMysqlProcédure d'installation pour.Cet article s'appuie sur l'article précédent pour écrire sur l'installation et le déploiement de Clusters. Adresse d'installation:https://www.cnblogs.com/ming-blogs/p/10 ...

  5. Projet avancé De Construction d'un environnement de Cluster(Trois) Noeuds de gestion multiples MySQLCluster

    Dernier projet de blog avancé De Construction d'un environnement de Cluster(2.)MySQLEn grappes, Nous avons construit une base MySQLCluster, Continuons avec ce blog. MySQL Contenu pertinent du cluster ,En même temps, proposer une solution aux problèmes hérités de l'article précédent. 1. Noeud de gestion unique ...

  6. [Original] Projet avancé De Construction d'un environnement de Cluster(2.)MySQLCluster

    Dans notre dernier billet de blog, nous avons introduit les concepts de Clusters,Le blog d'aujourd'hui nous présenteMySQL Contenu pertinent du cluster . 1.MySQLIntroduction à la grappe MySQLLa technologie des grappes dans les systèmes distribués estMySQL Les données fournissent des caractéristiques redondantes , Amélioration de la sécurité , Faire un single ...

  7. Basé surkeepalivedConstructionMySQL Groupe thermomoteur

    Contexte MySQLIl existe généralement plusieurs solutions de rechange très disponibles pour: keepalived+Double Maître,MHA,MMM,Heartbeat+DRBD,PXC,Galera Cluster Plus souvent,keepalived+Double Maître,M ...

  8. Comment construire un MySQL Grappe distribuée

    1. Préparation de l'environnement de construction des grappes Utiliser6 Une machine virtuelle pour construire MySQLGrappe distribuée ,L'environnement expérimental correspondant correspond àMySQLLa correspondance entre les noeuds est illustrée dans la figure ci - dessous: Gérer les noeuds(MGM): Le rôle de ces noeuds est de gérer MySQLClusterIntérieur ...

  9. Amoeba mysql Construction et introduction de la séparation lecture - écriture

    Amoeba mysql Construction et introduction de la séparation lecture - écriture Recommandations: http://blog.chinaunix.net/uid-20639775-id-154600.html

  10. MySQLCluster---②WindowsConstruction de la plateformeMySQL CLUSTERCluster

    Original: ANGLAIS:http://blog.csdn.net/mazhaojuan/article/details/42211857 Cet article sera brièvement présenté à travers deux ordinateursWindows Comment construire la plateforme MySQLCluster. My ...

Recommandation aléatoire

  1. AdoptionMiniProfilerSurveillanceEFAvec.NET MVCProjets(Entity Framework Extension de la série1)

    Préface Entity Framework Extension du catalogue des séries Aujourd'hui, parlons deEFAvecMVC Essais de performance et surveillance du projet Tout d'abord,,Décrivez d'abord les outils que nous utilisons aujourd'hui. MiniProfiler~ Cette chose est décrite ci - dessous. : MVC Mi ...

  2. Dans Firefox Explorer event Solutions inefficaces --Enregistrement(Un.)

    J'ai eu ce problème aujourd'hui.IE, Pas de problème avec Google. ,Mais dansFF Mais ça ne marche pas. , C'est déprimant. , Voir d'autres blogueurs , Ça a marché ou ça a marché. , Mais c'est trop gênant. , Ou ça ne marche pas. , C'est la même chose que de ne pas le dire. . En fait, juste cette phrase de code:e=ar ...

  3. Zookeeper(Un.) De l'algorithme de tiroir à Quorum (NRW)Algorithmes

    Un.. Algorithme de tiroir Algorithme de tiroir , Aussi connu sous le nom de principe du pigeon ,C'est la première fois que le Mathématicien allemand dillickle a explicitement soulevé et utilisé pour prouver certains problèmes dans la théorie des nombres,Donc,, Aussi connu sous le nom de principe Dirichlet .C'est un principe important en Mathématiques combinatoires. L'algorithme spécifique est : Algorithme du premier tiroir : Si ...

  4. AspNetPagerContrôle de la pagination

    AspNetPagerLe contrôle de pagination résout de nombreux problèmes de pagination,Utilisez ce contrôle directement pour la pagination,Cela simplifiera le travail fastidieux de pagination,Voici comment je l'utiliseAspNetPagerCode détaillé du contrôle pour la pagination:1.D'abord.www.we ...

  5. hdu 2896 ACAutomates

    // hdu 2896 ACAutomates // // Objet: // // Voilà.n Chaîne courte , Et voilà. q Chaîne longue chaîne , Exige que chaque longue chaîne // S'il y a une courte chaîne , Qu'est - ce qu'une courte chaîne apparaît? // // Comment résoudre le problème: // / ...

  6. Unity3dCoopération au titre de projets Fusion et restauration de scènes

    Unity3dCoopération au titre de projets   Fusion et restauration de scènes Déclaration spéciale:Reproduit à partir deUnity3DInstitut de recherche Comment violer le droit d'auteur , Veuillez me prévenir de la suppression ! Résumé: ExporterUnityToutes les informations de l'objet de jeu pour la scène,L'un estXMLL'un estJSON. Dans cet article, nous mettons ...

  7. SuperSocketBase(2.)-----Un faitSocketServerProjets

    SuperSocketBase(2.)-----Un faitSocketServerProjets Échec de la mise à jour en raison de la relation temporelle,À propos deSuperSocket,Pour les débutants,UnSuperSockDeServerC'est vraiment pas facile d'écrire.Officier ...

  8. Double chromosphèrejs

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Webpack+vue2.0 Comment enregistrer les composants globaux (01)

    Part 1, Questions: webpack + vue2.0Dans le cadre, Comment entrer jsComposants enregistrés dans? Il y a un mois. , Entrée précipitée vuejs Cette communauté , Je comprends. vuejs Quelques caractéristiques de base et syntaxe de . L'auteur commence à penser avec enthousiasme ...

  10. Swagger Utiliser le tutoriel complet ,De l'initiation à la maîtrise

    SwaggerOui.OpenAPISpécifications(OAS) Le plus grand du monde API Outils de développement de cadres , Mais dans l'ensemble API Développement tout au long du cycle de vie ,De la conception et de la documentation à la mise à l'essai et au déploiement.Il offre de nombreux outils d'essai pour aider les développeurs à développer des interfaces, Comme l'interface en temps opportun ...