DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(mysql.info) replication-implementation

Info Catalog (mysql.info) replication-intro (mysql.info) replication (mysql.info) replication-implementation-details
 
 6.2 Replication Implementation Overview
 =======================================
 
 MySQL replication is based on the master server keeping track of all
 changes to your databases (updates, deletes, and so on) in its binary
 logs. Therefore, to use replication, you must enable binary logging on
 the master server. See  binary-log.
 
 Each slave server receives from the master the saved updates that the
 master has recorded in its binary log, so that the slave can execute
 the same updates on its copy of the data.
 
 It is _extremely_ important to realize that the binary log is simply a
 record starting from the fixed point in time at which you enable binary
 logging. Any slaves that you set up need copies of the databases on
 your master _as they existed at the moment you enabled binary logging
 on the master_. If you start your slaves with databases that are not in
 the same state as those on the master when the binary log was started,
 your slaves are quite likely to fail.
 
 One way to copy the master's data to the slave is to use the `LOAD DATA
 FROM MASTER' statement. However, `LOAD DATA FROM MASTER' works only if
 all the tables on the master use the `MyISAM' storage engine. In
 addition, this statement acquires a global read lock, so no updates on
 the master are possible while the tables are being transferred to the
 slave. When we implement lock-free hot table backup, this global read
 lock will no longer be necessary.
 
 Due to these limitations, we recommend that at this point you use `LOAD
 DATA FROM MASTER' only if the dataset on the master is relatively
 small, or if a prolonged read lock on the master is acceptable.
 Although the actual speed of `LOAD DATA FROM MASTER' may vary from
 system to system, a good rule of thumb for how long it takes is 1
 second per 1MB of data.  This is a rough estimate, but you should find
 it fairly accurate if both master and slave are equivalent to 700MHz
 Pentium CPUs in performance and are connected through a 100Mbps network.
 
 After the slave has been set up with a copy of the master's data, it
 connects to the master and waits for updates to process. If the master
 fails, or the slave loses connectivity with your master, the slave
 keeps trying to connect periodically until it is able to resume
 listening for updates. The -master-connect-retry option controls the
 retry interval. The default is 60 seconds.
 
 Each slave keeps track of where it left off when it last read from its
 master server. The master has no knowledge of how many slaves it has or
 which ones are up to date at any given time.
 
Info Catalog (mysql.info) replication-intro (mysql.info) replication (mysql.info) replication-implementation-details
automatically generated byinfo2html