Rechercher dans le manuel MySQL
17.1.2.6 Setting Up Replication Slaves
The following sections describe how to set up slaves. Before you proceed, ensure that you have:
Configured the MySQL master with the necessary configuration properties. See Section 17.1.2.1, “Setting the Replication Master Configuration”.
Obtained the master status information, or a copy of the master's binary log index file made during a shutdown for the data snapshot. See Section 17.1.2.4, “Obtaining the Replication Master Binary Log Coordinates”.
On the master, released the read lock:
On the slave, edited the MySQL configuration. See Section 17.1.2.2, “Setting the Replication Slave Configuration”.
The next steps depend on whether you have existing data to import to the slave or not. See Section 17.1.2.5, “Choosing a Method for Data Snapshots” for more information. Choose one of the following:
If you do not have a snapshot of a database to import, see Section 17.1.2.6.1, “Setting Up Replication with New Master and Slaves”.
If you have a snapshot of a database to import, see Section 17.1.2.6.2, “Setting Up Replication with Existing Data”.
17.1.2.6.1 Setting Up Replication with New Master and Slaves
When there is no snapshot of a previous database to import, configure the slave to start the replication from the new master.
To set up replication between a master and a new slave:
Start up the MySQL slave.
Execute a
CHANGE MASTER TO
statement to set the master replication server configuration. See Section 17.1.2.7, “Setting the Master Configuration on the Slave”.
Perform these slave setup steps on each slave.
This method can also be used if you are setting up new servers but have an existing dump of the databases from a different server that you want to load into your replication configuration. By loading the data into a new master, the data is automatically replicated to the slaves.
If you are setting up a new replication environment using the data from a different existing database server to create a new master, run the dump file generated from that server on the new master. The database updates are automatically propagated to the slaves:
shell> mysql -h master < fulldb.dump
When setting up replication with existing data, transfer the snapshot from the master to the slave before starting replication. The process for importing data to the slave depends on how you created the snapshot of data on the master.
Choose one of the following:
If you used mysqldump:
Start the slave, using the
--skip-slave-start
option so that replication does not start.Import the dump file:
shell> mysql < fulldb.dump
If you created a snapshot using the raw data files:
Extract the data files into your slave data directory. For example:
shell> tar xvf dbdump.tar
You may need to set permissions and ownership on the files so that the slave server can access and modify them.
Start the slave, using the
--skip-slave-start
option so that replication does not start.Configure the slave with the replication coordinates from the master. This tells the slave the binary log file and position within the file where replication needs to start. Also, configure the slave with the login credentials and host name of the master. For more information on the
CHANGE MASTER TO
statement required, see Section 17.1.2.7, “Setting the Master Configuration on the Slave”.Start the slave threads:
After you have performed this procedure, the slave connects to the master and replicates any updates that have occurred on the master since the snapshot was taken. Error messages are issued to the slave's error log if it is not able to replicate for any reason.
The slave uses information logged in its master info log and
relay log info log to keep track of how much of the
master's binary log it has processed. From MySQL 8.0, by
default, the repositories for these slave status logs are
tables named slave_master_info
and
slave_relay_log_info
in the
mysql
database. The alternative settings
--master-info-repository=FILE
and
--relay-log-info-repository=FILE
, where the
repositories are files named master.info
and relay-log.info
in the data directory,
are now deprecated and will be removed in a future release.
Do not remove or edit these tables (or
files, if used) unless you know exactly what you are doing and
fully understand the implications. Even in that case, it is
preferred that you use the CHANGE MASTER
TO
statement to change replication parameters. The
slave uses the values specified in the statement to update the
slave status logs automatically. See
Section 17.2.4, “Replication Relay and Status Logs”, for more information.
The contents of the master info log override some of the
server options specified on the command line or in
my.cnf
. See
Section 17.1.6, “Replication and Binary Logging Options and Variables”, for more details.
A single snapshot of the master suffices for multiple slaves. To set up additional slaves, use the same master snapshot and follow the slave portion of the procedure just described.
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 26/06/2006 gemaakt, de laatste keer de 26/10/2018 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/mysql-rf-replication-setup-slaves.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.