1. Was ist mycat Ein vollständig Open Source-Großdatenbankcluster für die Entwicklung von Unternehmensanwendungen Eine erweiterte Datenbank, die Transaktionen und ACID unterstützt und MySQL ersetzen kann Eine Datenbank der Enterprise-Klasse, die als MySQL-Cluster betrachtet werden kann und teure Oracle-Cluster ersetzt Ein neuer SQL Server, der Memory-Cache-Technologie, NoSQL-Technologie und HDFS-Big-Data integriert Eine neue Generation von Datenbankprodukten auf Unternehmensebene, die traditionelle Datenbanken mit neuen verteilten Data Warehouses kombiniert Ein neuartiges Datenbank-Middleware-Produkt Das Obige ist die offizielle Erklärung. Tatsächlich ist es der Datenbankverbindungspool. Der MySQL-Proxy ist ebenfalls ein Verbindungspool, seine Effizienz ist jedoch sehr gering. 2. Mycat-Installation 1. Laden Sie mycat herunter 2. Installieren Sie mycat # tar zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz -C /usr/local/ 3. Konfigurieren Sie mycat 1. Konfigurieren Sie server.xml # vim /usr/local/mycat/conf/server.xml //Fügen Sie den folgenden Inhalt hinzu<user name="user"> //mycat-Benutzername<property name="password">user</property> //mycat-Passwort<property name="schemas">mytest</property> //Name der virtuellen mycat-Datenbank<property name="readOnly">true</property> //Nur lesbar</user> <Benutzername="tankzhang"> <property name="password">admin</property> <Eigenschaftsname="schemas">mytest</Eigenschaftsname> </Benutzer> Bitte beachten Sie, dass der Standardname der virtuellen Datenbank TESTDB lautet. Wenn testdb nicht in schema.xml konfiguriert ist, müssen Sie testdb in den Namen der virtuellen Datenbank in schema.xml ändern. Der hier definierte Benutzername und das Passwort sowie der Name der virtuellen Datenbank existieren in MySQL eigentlich nicht. 2. Konfigurieren Sie schema.xml # cat schema.xml <?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="mytest" checkSQLschema="false" sqlMaxLimit="100" dataNode="my1" />//Definieren Sie den Namen der virtuellen Datenbank mytest <dataNode name="my1" dataHost="test1" database="test" /> //Der eigentliche Datenbankname ist test <dataHost name="test1" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" > <heartbeat>Benutzer auswählen()</heartbeat> <writeHost host="hostM1" url="192.168.5.213:3306" user="tank" password="123456" > //Echte Datenbankverbindungsmethode <readHost host="hostS1" url="192.168.5.214:3306" user="tank" password="123456" /> //Dasselbe wie oben</writeHost> </dataHost> </mycat:schema> Es gibt ziemlich viele Mycat-Konfigurationsparameter. Konzentrieren Sie sich auf balance="1" und writeType="0" a. Balance-Attribut für den Lastausgleichstyp, derzeit gibt es 4 Werte:
b. writeType-Attribut Lastausgleichstyp. Derzeit gibt es 3 Werte:
Spezifische Parameter 3. Konfigurieren Sie den Master-Slave-Server 4. Echte Benutzer hinzufügen gewähre tank@"192.168.%", identifiziert durch „123456", alle Privilegien bei test.*; Flush-Berechtigungen Fügen Sie Benutzer auf den Maschinen 213 und 214 hinzu. 5. Testen Sie die tatsächliche Benutzerverbindung Stellen Sie sicher, dass der in schema.xml konfigurierte echte Benutzer eine Verbindung zur echten Datenbank herstellen kann. Achten Sie auf Firewalls. Viertens starten Sie mycat 1. Gemeinsame Parameter ./mycat start Starten./mycat stop Stoppen./mycat console Im Vordergrund ausführen./mycat restart Dienst neu starten./mycat pause Pause./mycat status Startstatus prüfen 2. Starten und betrachten Sie mycat # ./mycat starten Mycat-Server wird gestartet ... # netstat -tpnl |grep 8066 tcp 0 0 :::8066 :::* LISTEN 31728/java # ./mycat-Status Mycat-Server läuft (31726). 5. Testen Sie die Lese-/Schreibtrennung # mysql -u tankzhang -p -P 8066 -h 127.0.0.1 // Achten Sie darauf, 127.0.0.1 einzuschließen Passwort eingeben: Willkommen beim MySQL-Monitor. Befehle enden mit ; oder \g. Ihre MySQL-Verbindungs-ID ist 1 Serverversion: 5.6.29-mycat-1.6-RELEASE-20161028204710 MyCat Server (OpenCloundDB) Copyright (c) 2000, 2016, Oracle und/oder seine Tochtergesellschaften. Alle Rechte vorbehalten. Oracle ist eine eingetragene Marke der Oracle Corporation und/oder ihrer Tochtergesellschaften. Andere Namen können Marken ihrer jeweiligen Eigentümer. Geben Sie „help;“ oder „\h“ ein, um Hilfe zu erhalten. Geben Sie „\c“ ein, um die aktuelle Eingabeanweisung zu löschen. mysql> Datenbanken anzeigen; +----------+ | DATENBANK | +----------+ | mytest | //Virtuelle Datenbank+----------+ 1 Zeile im Satz (0,00 Sek.) mysql> verwende mytest; Einlesen von Tabelleninformationen zur Vervollständigung von Tabellen- und Spaltennamen Sie können diese Funktion deaktivieren, um einen schnelleren Start mit -A zu erhalten mysql> Tabelle erstellen, wenn nicht vorhanden `Benutzer` ( -> `id` int(11) unsigniert NICHT NULL STANDARD '0' KOMMENTAR 'ID', -> `name` varchar(20) NICHT NULL STANDARD '' KOMMENTAR 'Name', -> `create_time` int(10) NOT NULL DEFAULT '0' COMMENT 'Erstellungszeit', -> PRIMÄRSCHLÜSSEL (`id`) ->) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1; Abfrage OK, 0 Zeilen betroffen (0,08 Sek.) Datenbank geändert mysql> Tabellen anzeigen; +----------------+ | Tabellen_im_Test | +----------------+ | Benutzer | +----------------+ 1 Zeile im Satz (0,01 Sek.) mysql> INSERT INTO `Benutzer` (`id`, `name`) VALUES ('1', 'tank'); Abfrage OK, 1 Zeile betroffen (0,00 Sek.) mysql> select * from user; // Ändern Sie den Namen in der Benutzertabelle der Slave-Datenbank, und Sie werden feststellen, dass der Lesevorgang aus der Slave-Datenbank erfolgt +----+-----------+-------------+ | ID | Name | Erstellungszeit | +----+-----------+-------------+ | 1 | 0 | +----+-----------+-------------+ 1 Zeile im Satz (0,01 Sek.) VI. Zusammenfassung mycat unterstützt MySQL-Tabellenpartitionierung, Sharding usw., wird jedoch nicht empfohlen. Mycat unterstützt nicht viele Cluster, daher wäre es toll, wenn es mit mha verwendet werden könnte. 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:
|
<<: Ein einfaches Beispiel für die Verwendung von Vue3-Routing VueRouter4
Verwenden Sie CSS, um den Stil der Bildlaufleiste...
Inhaltsverzeichnis Bindungsklasse Inline-Stile bi...
Der MySQL-Volltextindex ist ein spezieller Index,...
Deklarieren Sie den Parameternamen, den Typ und d...
JavaScript-Skripte können überall in HTML eingebe...
1. Konfigurieren Sie den Docker-Remoteverbindungs...
1. Es gibt im Allgemeinen zwei Methoden zur Steue...
Inhaltsverzeichnis Einführung und Demo API: Conta...
Vorwort Vor kurzem war ich damit beschäftigt, ein...
Aufschlag: # chkconfig --list Alle Systemdienste ...
Im Linux-System können Umgebungsvariablen entspre...
Inhaltsverzeichnis Vorwort 1.1 Funktion 1.2 So st...
Im Folgenden habe ich einige grundlegende SQL-Ken...
1. Definition von offsetParent: offsetParent ist ...
Dieser Artikel beschreibt verschiedene Möglichkei...