Was ist MyCAT
Hauptfunktionen von MyCAT
1. Hier wird mycat basierend auf der Implementierung der MySQL-Master-Slave-Replikation zur Lese- und Schreibtrennung verwendet. Das Architekturdiagramm ist wie folgt: 2. Demo 2.1 Erstellen Sie eine Datenbank auf dem MySQL-Master. Erstellen Sie db1 2.2 Tabelle „Student“ in Datenbank db1 erstellen Da die MySQL-Master-Slave-Replikation konfiguriert ist, befinden sich gleichzeitig auch die gleichen Datenbanken und Tabellen auf dem MySQL-Slave 2.3 Bearbeiten Sie die Mycat-Konfigurationsdatei server.xml <!-- gibt den Login-Benutzernamen von mycat an --> <Benutzername="test"> <!-- gibt das Anmeldekennwort von mycat an --> <property name="password">test</property> <!-- gibt den logischen Datenbanknamen von mycat an, der angepasst werden kann --> <Eigenschaftsname="schemas">TESTDB</Eigenschaft> </Benutzer> <Benutzername="Benutzer"> <property name="password">Benutzer</property> <Eigenschaftsname="schemas">TESTDB</Eigenschaft> <Eigenschaftsname="readOnly">wahr</Eigenschaft> </Benutzer> 2.4 Bearbeiten Sie die mycat-Konfigurationsdatei schema.xml <!--TESTDB stellt den logischen Datenbanknamen von mycat dar. Wenn der Schemaknoten keine untergeordnete Knotentabelle hat, muss das Attribut dataNode vorhanden sein (auf die echte MySQL-Datenbank verweisend). --> <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"> </schema> <!--Geben Sie die Masterdatenbank db1 an--> <dataNode name="dn1" dataHost="192.168.0.4" database="db1" /> <!--Geben Sie die Masteret-IP an --> <dataHost name="192.168.0.4" maxCon="1000" minCon="10" balance="3" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <!--Zeigt den Heartbeat-Status von MySQL an--> <heartbeat>Benutzer auswählen()</heartbeat> <!-- Master ist für das Schreiben zuständig --> <writeHost host="hostM1" url="192.168.0.4:3306" Benutzer="root" Passwort="admin"> <!--Slave ist für das Lesen zuständig--> <readHost host="hostS2" url="192.168.0.5:3306" Benutzer="root" Passwort="admin" /> </writeHost> </dataHost> Zu diesem Zeitpunkt ist die Konfiguration der Verwendung von mycat zur Lese-/Schreibtrennung abgeschlossen Beachten Sie die folgenden drei Eigenschaften des dataHost-Knotens Balance, Schaltertyp, Schreibtyp balance="0", der Lese-/Schreibtrennungsmechanismus ist nicht aktiviert und alle Lesevorgänge werden an den aktuell verfügbaren Schreibhost gesendet. Balance = "1", alle ReadHosts und Standby-WriteHosts nehmen am Lastausgleich der Select-Anweisung teil. Einfach ausgedrückt, im Dual-Master- und Dual-Slave-Modus (M1->S1, M2->S2 und M1 und M2 sind gegenseitig Master und Slave) nehmen unter normalen Umständen M2, S1 und S2 alle am Lastausgleich der Select-Anweisung teil. Balance = "2", alle Lesevorgänge werden zufällig auf WriteHost und Readhost verteilt. Balance = "3", alle Leseanforderungen werden zur Ausführung zufällig an den Readhost unter WriteHost verteilt, und WriteHost trägt keinen Lesedruck writeType gibt den Schreibmodus an writeType="0", alle Operationen werden an den ersten konfigurierten Writehost gesendet writeType="1", nach dem Zufallsprinzip an alle konfigurierten Schreibhosts senden writeType="2", es wird kein Schreibvorgang ausgeführt switchType bezieht sich auf den Umschaltmodus und derzeit gibt es 4 mögliche Werte: switchType='-1' bedeutet keine automatische Umschaltung switchType='1' Standardwert, zeigt automatisches Umschalten an switchType='2' bestimmt, ob basierend auf dem Status der MySQL-Master-Slave-Synchronisierung gewechselt werden soll. Die Heartbeat-Anweisung lautet show slave status switchType='3' basiert auf dem Umschaltmechanismus des MySQL-Galary-Clusters (geeignet für Cluster) (1.4.1), und die Heartbeat-Anweisung zeigt den Status wie „wsrep%“ an. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
>>: Detaillierte Erläuterung zur Verwendung von Node.js zum Implementieren einer Hot-Reload-Seite
1. Daten initialisieren Tabelle löschen, wenn `te...
http://www.cppcns.com/shujuku/mysql/283231.html S...
Wichtige Modifikatoren Wenn wir auf Tastaturereig...
Hintergrund Ein spezielles Gerät wird verwendet, ...
Dies ist eigentlich kein offizielles Dokument des ...
In diesem Artikelbeispiel wird der spezifische HT...
Vor Kurzem haben wir SQL zur Optimierung online e...
Die goldene Regel Unabhängig davon, wie viele Per...
So deklarieren Sie einen Cursor in MySQL: 1. Vari...
Warum brauchen wir virtuellen Dom? Virtual DOM wu...
Die Methode zur Lösung des Problems, das anfängli...
Hintergrund Als ich kürzlich SQL-Anweisungen schr...
Vorwort smb ist der Name eines Protokolls, das fü...
Im Linux-Umfeld möchten Sie prüfen, ob eine besti...
Zabbix erkennt automatisch Regeln zur Überwachung...