Arbeitsprinzipdiagramm:
Prinzip der Master-Slave-Replikation:
Punkte Für die synchrone Replikation und die asynchrone Replikation ist der größte Teil der eigentlichen Replikations--Architektur eine asynchrone Replikation. Der grundlegende Prozess der Replikation ist wie folgt:
1 Der IO-Prozess auf dem Slave stellt eine Verbindung zum Master her und fordert den Protokollinhalt von der angegebenen Position der angegebenen Protokolldatei (oder vom Anfang des Protokolls an). );
🎜>2). > und gibt es an den IO-Prozess des Slaves zurück. Zusätzlich zu den im Protokoll enthaltenen Informationen umfassen die zurückgegebenen Informationen auch den Namen der Bin-Log-Datei und den Speicherort des Bin-Logs, den die zurückgegebenen Informationen auf der Master-Seite erreicht haben; UmgebungsbeschreibungBetriebssystem: CentOS6.3_x64
Master-Server-Master: 192.168. 0.202
Slave vom Server: 192.168.0.203
1. MySQL-Master-Slave-Replikation
Wir haben MySQL-5.5.30.tar.gz installiert, hier weggelassen...
2 Master- und Slave-Server
3. Starten Sie den Master-Slave-Server MySQL neu
master服务器配置: vi /usr/local/mysql/etc/my.cnf [mysqld] server-id=202 #设置服务器唯一的id,默认是1,我们设置ip最后一段,slave设置203 log-bin=mysql-bin # 启用二进制日志 binlog-ignore-db = mysql,information_schema #忽略写入binlog的库 slave服务器配置: vi /usr/local/mysql/etc/my.cnf [mysqld] server-id=203 replicate-do-db = abc #只同步abc库 slave-skip-errors = all #忽略因复制出现的所有错误
4. Erstellen Sie ein Konto auf dem Master-Server und Slave autorisieren
/etc/init.d/mysqld restart
5. Überprüfen Sie den Status der Master-Datenbank
mysql> mysql -u root -p123.com mysql> GRANT REPLICATION SLAVE ON *.* to [email protected] identified by ‘1234.com’; #replication:复制
6 >
mysql> show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000002 | 263 | | | +------------------+----------+--------------+------------------+
7. Starten Sie den Slave-Synchronisierungsprozess und überprüfen Sie den Status
mysql> change master to -> master_host='192.168.0.202', -> master_user='sync', -> master_password='1234.com', -> master_log_file='mysql-bin.000002', -> master_log_pos=263; #Log和pos是master上随机获取的。这段也可以写到my.cnf里面。
Die Werte von Slave_IO_Running und Slave_SQL_Running müssen YES sein, um anzuzeigen, dass der Status normal ist.
mysql> start slave;
8. Überprüfen Sie die Master-Slave-Synchronisierung
Erstellen Sie eine Datenbankabc in Master-MySQL und überprüfen Sie dann von MySQL aus, ob die Synchronisierung erfolgreich war!
Beim Slave-Start gemeldeter Fehler: "Last_IO_Error: Schwerwiegender Fehler 1236 vom Master beim Lesen von Daten aus dem Binärprotokoll: 'Der erste Protokolldateiname konnte in der Binärprotokoll-Indexdatei nicht gefunden werden ' ”
mysql> create database abc; mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | abc | | mysql | | performance_schema | | test | +--------------------+
Das obige ist der detaillierte Inhalt vonAnalysieren Sie die Prinzipien und die Konfiguration der MySQL-Master-Slave-Replikation. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!