Heim Datenbank MySQL-Tutorial mysql的主从复制与半同步复制(一)

mysql的主从复制与半同步复制(一)

Jun 07, 2016 pm 05:38 PM
MySQL-Master-Slave-Replikation 半同步复制

一、mysql的主从复制复制过程需要至少两个mysql服务节点,mysql的主从复制框架一般都为一主多从,从多机房汇总到数据中心的模式,而复制过程只能从主服务器到从

一、mysql的主从复制

复制过程需要至少两个mysql服务节点,mysql的主从复制框架一般都为一主多从,,从多机房汇总到数据中心的模式,而复制过程只能从主服务器到从服务器实现。

复制过程中,主服务器负责读/写操作,而从服务器只负责读操作

二、主从复制的功能

1、实现数据冗余、异地灾备恢复、备份

2、实现数据的读/写分离

3、实现数据库服务的负载均衡

4、实现高可用与故障切换

5、实现MySQL的升级测试

三、主从复制过程中注意的事项

1、不要混合shi用不同的存储引擎

2、主从服务器的server-id 要保持不同

3、尽力避免修改从服务器的数据库

4、尽可能的使用基于行或基于混合模式的复制,避免使用基于语句的复制

5、主服务器要启动二进制日志,而从节点则是开启中继日志,而且要确保从服务器的复制线程时刻开启着

6、注意因为磁盘及内存的大小不足而导致的复制崩溃

四、主从复制的具体实现过程

mysql主从复制拓扑图

212339331.jpg

1、准备两个安装过mysql服务的节点xz:172.16.200.5,node2:172.16.200.7,修改主机名并同步时间;

[root@xz ~]# hostname master [root@master ~]# crontab -e */1 * * * * /usr/sbin/ntpdate 172.16.0.1 &> /dev/null [root@node2 ~]# hostname slave [root@slave ~]# crontab -e */1 * * * * /usr/sbin/ntpdate 172.16.0.1 &> /dev/null

2、在主节点上创建有复制权限的用户,于从节点上使用授权用户连接测试;


[root@master ~]# mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.5.33-log MySQL Community Server (GPL) 。。。。。 mysql> grant replication slave,replication client on *.* to 'zly'@'172.16.200.7' identified by 'mypass'; Query OK, 0 rows affected (0.35 sec) mysql> flush privileges; Query OK, 0 rows affected (0.09 sec) mysql> show grants for 'zly'@'172.16.200.7'; +-----------------------------------------------------------------------------------------------------------------------------------------------+ | Grants for zly@172.16.200.7 | +-----------------------------------------------------------------------------------------------------------------------------------------------+ | GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'zly'@'172.16.200.7' IDENTIFIED BY PASSWORD '*6C8989366EAF75BB670AD8EA7A7FC1176A95CEF4' | +-----------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.03 sec) ........... [root@slave ~]# mysql -uzly -pmypass -h 172.16.200.5 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.5.33-log MySQL Community Server (GPL) Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

3、修改主从两个节点的配置文件,并重新启动mysql服务;

[root@master ~]# vim /etc/my.cnf log-bin=mysql-bin log_bin_index = mysql_bin.index binlog_format=mixed server-id = 5 [root@master ~]# killall mysqld [root@master ~]# ps aux | grep mysqld root 7700 0.0 0.1 103244 832 pts/3 S+ 09:27 0:00 grep mysqld [root@master ~]# service mysqld restart MySQL server PID file could not be found! [FAILED] Starting MySQL... [ OK ] [root@master ~]# service mysqld restart Shutting down MySQL. [ OK ] Starting MySQL.. [ OK ] ............... [root@slave ~]# vim /etc/my.cnf #log-bin=mysql-bin # binary logging format - mixed recommended #binlog_format=mixed skip_slave_start = 1 read_only = 1 relay_log = relay_log relay_log_index = relay_log.index # required unique id between 1 and 2^32 - 1 # defaults to 1 if master-host is not set # but will not function as a master if omitted server-id = 7 [root@slave ~]# killall mysqld [root@slave ~]# ps aux | grep mysqld root 8796 0.0 0.1 103244 832 pts/4 S+ 23:45 0:00 grep mysqld [root@slave ~]# service mysqld restart MySQL server PID file could not be found! [FAILED] Starting MySQL.. [ OK ] [root@slave ~]# service mysqld restart Shutting down MySQL. [ OK ] Starting MySQL.. [ OK ]

4、查看主节点的二进制日志及其事件位置;

mysql> show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000011 | 107 | | | +------------------+----------+--------------+------------------+ 1 row in set (0.00 sec)

5、与从节点上复制主节点上的数据;

[root@slave ~]# mysql mysql> help change master to Name: 'CHANGE MASTER TO' Description: Syntax: CHANGE MASTER TO option [, option] ... option: MASTER_BIND = 'interface_name' | MASTER_HOST = 'host_name' | MASTER_USER = 'user_name' | MASTER_PASSWORD = 'password' | MASTER_PORT = port_num | MASTER_CONNECT_RETRY = interval | MASTER_HEARTBEAT_PERIOD = interval | MASTER_LOG_FILE = 'master_log_name' | MASTER_LOG_POS = master_log_pos | RELAY_LOG_FILE = 'relay_log_name' | RELAY_LOG_POS = relay_log_pos | MASTER_SSL = {0|1} | MASTER_SSL_CA = 'ca_file_name' | MASTER_SSL_CAPATH = 'ca_directory_name' | MASTER_SSL_CERT = 'cert_file_name' | MASTER_SSL_KEY = 'key_file_name' | MASTER_SSL_CIPHER = 'cipher_list' | MASTER_SSL_VERIFY_SERVER_CERT = {0|1} | IGNORE_SERVER_IDS = (server_id_list) server_id_list: [server_id [, server_id] ... ] ........................................ mysql> change master to -> master_host='172.16.200.5',master_user='zly',master_password='mypass ',master_port=3306,master_log_file='mysql-bin.000011',master_log_pos=107; Query OK, 0 rows affected (0.07 sec)

6、启动从服务器复制线程、查看状态,并查看启动的线程;

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Datensicherung und Wiederherstellung nach Fehlern: Diskussion über die Bedeutung der MySQL-Master-Slave-Replikation im Cluster-Modus Datensicherung und Wiederherstellung nach Fehlern: Diskussion über die Bedeutung der MySQL-Master-Slave-Replikation im Cluster-Modus Sep 08, 2023 am 09:03 AM

Datensicherung und Wiederherstellung nach Fehlern: Diskussion über die Bedeutung der MySQL-Master-Slave-Replikation im Cluster-Modus. Einführung: In den letzten Jahren sind Datenbanksicherung und Wiederherstellung nach Fehlern aufgrund des kontinuierlichen Wachstums des Datenumfangs und der Datenkomplexität besonders wichtig geworden. In verteilten Systemen wird die MySQL-Master-Slave-Replikation häufig im Cluster-Modus verwendet, um hohe Verfügbarkeit und Fehlertoleranz zu gewährleisten. In diesem Artikel wird die Bedeutung der MySQL-Master-Slave-Replikation im Cluster-Modus untersucht und einige Codebeispiele gegeben. 1. Grundprinzipien und Vorteile der MySQL-Master-Slave-Replikation Die MySQL-Master-Slave-Replikation ist allgemeingültig

So verbessern Sie die MySQL-Leistung durch die Verwendung einer halbsynchronen Replikation So verbessern Sie die MySQL-Leistung durch die Verwendung einer halbsynchronen Replikation May 11, 2023 am 10:21 AM

Mit der kontinuierlichen Weiterentwicklung des Internets und dem explosionsartigen Wachstum des Datenvolumens sind Datenbanken zum Kernbestandteil vieler Websites, Anwendungen und Systeme geworden. Als relationales Open-Source-Datenbankverwaltungssystem ist MySQL aufgrund seiner Vorteile in Bezug auf Stabilität, Zuverlässigkeit und Kosteneffizienz die bevorzugte Datenbank, die in der Branche weit verbreitet ist. In tatsächlichen Produktionsumgebungen treten jedoch mit zunehmender Datenmenge allmählich Leistungsprobleme von MySQL auf. Insbesondere in großen Unternehmensanwendungen gibt es Anforderungen wie das Lesen und Schreiben großer Datenmengen, hohe gleichzeitige Anforderungen und Datenzuverlässigkeit.

Hohe Parallelität problemlos meistern: Analyse der Leistungsvorteile der MySQL-Master-Slave-Replikation als Cluster-Technologie Hohe Parallelität problemlos meistern: Analyse der Leistungsvorteile der MySQL-Master-Slave-Replikation als Cluster-Technologie Sep 10, 2023 pm 03:48 PM

Hohe Parallelität problemlos bewältigen: Analyse der Leistungsvorteile der MySQL-Master-Slave-Replikation als Cluster-Technologie Mit der rasanten Entwicklung des Internets haben Benutzerbesuche auf Websites und Anwendungen einen explosiven Wachstumstrend gezeigt. In dieser Situation hoher Parallelität ist die Sicherstellung der Systemstabilität und -leistung zu einer wichtigen Aufgabe für jeden Entwickler und Systemadministrator geworden. In Datenbanken ist die MySQL-Master-Slave-Replikationstechnologie weit verbreitet und hat sich zu einer der effektivsten Lösungen für den Umgang mit hoher Parallelität entwickelt. In diesem Artikel werden die Leistungsvorteile der MySQL-Master-Slave-Replikation als Cluster-Technologie untersucht. Erste

Entschlüsselung der MySQL-Master-Slave-Replikation: Offenlegung des wichtigsten Implementierungsmechanismus im Cluster-Modus Entschlüsselung der MySQL-Master-Slave-Replikation: Offenlegung des wichtigsten Implementierungsmechanismus im Cluster-Modus Sep 10, 2023 am 09:28 AM

Entschlüsselung der MySQL-Master-Slave-Replikation: Offenlegung des wichtigsten Implementierungsmechanismus im Cluster-Modus Einführung: In modernen Datenbanksystemen sind hohe Verfügbarkeit und Flexibilität der Daten sehr wichtig. Als relationales Open-Source-Datenbankverwaltungssystem bietet MySQL ein breites Anwendungsspektrum zur Erfüllung der Benutzeranforderungen. Die Master-Slave-Replikation von MySQL ist ein sehr wichtiger Teil der MySQL-Datenbankarchitektur und wird verwendet, um Datensicherung und Hochverfügbarkeit zu erreichen. Dieser Artikel konzentriert sich auf die Offenlegung des wichtigsten Implementierungsmechanismus der MySQL-Master-Slave-Replikation, insbesondere im Cluster-Modus.

Optimierung der Datenbankleistung: Der beste Weg, die MySQL-Master-Slave-Replikation in der Cluster-Technologie zu nutzen Optimierung der Datenbankleistung: Der beste Weg, die MySQL-Master-Slave-Replikation in der Cluster-Technologie zu nutzen Sep 10, 2023 am 08:24 AM

Optimierung der Datenbankleistung: Der beste Weg, die MySQL-Master-Slave-Replikation in der Cluster-Technologie zu nutzen Zusammenfassung: Mit der rasanten Entwicklung des Internets sind Probleme mit der Datenbankleistung in den Fokus verschiedener Unternehmen und Organisationen gerückt. Die MySQL-Master-Slave-Replikationstechnologie spielt eine wichtige Rolle bei der Lösung von Engpässen bei der Datenbankleistung. In diesem Artikel werden die Konzepte und Prinzipien der MySQL-Master-Slave-Replikation sowie die besten Einsatzmethoden der Cluster-Technologie vorgestellt, um den Lesern bei der Optimierung der Datenbankleistung zu helfen. 1. Einleitung Da die Datenmenge weiter zunimmt, treten Probleme mit der Datenbankleistung immer stärker in den Vordergrund. So optimieren Sie Zahlen

Ist die MySQL-Master-Slave-Replikation eine Cluster-Technologie oder eine Lastausgleichstechnologie? Analyse und Unterschied Ist die MySQL-Master-Slave-Replikation eine Cluster-Technologie oder eine Lastausgleichstechnologie? Analyse und Unterschied Sep 10, 2023 am 08:40 AM

Ist die MySQL-Master-Slave-Replikation eine Cluster-Technologie oder eine Lastausgleichstechnologie? Zusammenfassung der Analyse und Unterschiede: Die MySQL-Master-Slave-Replikation ist eine Datenbankreplikationstechnologie, die zum Synchronisieren von Datenbankdaten auf mehreren Servern verwendet wird. In diesem Artikel werden die Unterschiede zwischen MySQL-Master-Slave-Replikation, Cluster-Technologie und Lastausgleichstechnologie hinsichtlich technischer Prinzipien, Anwendungsszenarien und Funktionsmerkmale analysiert und unterschieden. Einleitung: In modernen Internetanwendungen sind eine hohe Verfügbarkeit und Skalierbarkeit von Datenbanken von entscheidender Bedeutung. Die MySQL-Master-Slave-Replikation ist jedoch eine der gängigsten Lösungen.

Ausführliche Erläuterung der Funktionen und Vorteile der MySQL-Master-Slave-Replikation in der Cluster-Technologie Ausführliche Erläuterung der Funktionen und Vorteile der MySQL-Master-Slave-Replikation in der Cluster-Technologie Sep 09, 2023 am 09:03 AM

Ausführliche Erläuterung der Funktionen und Vorteile der MySQL-Master-Slave-Replikation in der Cluster-Technologie. Einführung: MySQL ist ein leistungsstarkes relationales Datenbankverwaltungssystem, das in verschiedenen großen Websites und Anwendungen weit verbreitet ist. Mit zunehmender Datenmenge und Zugriffsanforderungen nimmt der Druck auf einen einzelnen MySQL-Server allmählich zu. Um die Leistung und Zuverlässigkeit der Datenbank zu verbessern, beginnen die Menschen mit der Einführung der Cluster-Technologie, zu der auch die MySQL-Master-Slave-Replikation gehört häufig verwendete Technologien. Das Prinzip der MySQL-Master-Slave-Replikation bezieht sich auf die MySQL-Master-Slave-Replikation

Aufdecken des Potenzials der Cluster-Technologie bei der MySQL-Master-Slave-Replikation: Vergleichende Bewertung von Open-Source-Lösungen und kommerziellen Lösungen Aufdecken des Potenzials der Cluster-Technologie bei der MySQL-Master-Slave-Replikation: Vergleichende Bewertung von Open-Source-Lösungen und kommerziellen Lösungen Sep 08, 2023 pm 07:16 PM

Nutzung des Cluster-Technologiepotenzials der MySQL-Master-Slave-Replikation: Vergleichende Bewertung von Open-Source-Lösungen und kommerziellen Lösungen Mit der kontinuierlichen Entwicklung des Internetgeschäfts und der zunehmenden Datenmenge ist die Nachfrage nach Datenbank-Cluster-Lösungen immer größer geworden. Die MySQL-Master-Slave-Replikationstechnologie erfüllt genau diese Anforderung. Sie kann die Lese- und Schreibvorgänge der Datenbank separat auf mehreren Knoten verarbeiten und so die Leseleistung und Verfügbarkeit der Datenbank verbessern. In diesem Artikel wird das Potenzial der Cluster-Technologie bei der MySQL-Master-Slave-Replikation untersucht und eine vergleichende Bewertung von Open-Source-Lösungen und kommerziellen Lösungen durchgeführt.

See all articles