die_replikation_der_mysql_5.6_mit_gtid
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| die_replikation_der_mysql_5.6_mit_gtid [2015-07-22 06:57:13] – manfred | die_replikation_der_mysql_5.6_mit_gtid [2017-04-20 11:00:30] (aktuell) – [Die Replikation der MySQL 5.6 mit GTID] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Die Replikation der MySQL 5.6 mit GTID ====== | ||
| + | |||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | [[Replikation mit GTID wieder herstellen]] | ||
| + | |||
| + | <file bash / | ||
| + | [mysqld] | ||
| + | server_id | ||
| + | skip-name-resolve | ||
| + | report_host | ||
| + | report_port | ||
| + | gtid_mode | ||
| + | enforce_gtid_consistency | ||
| + | log_slave_updates | ||
| + | master_verify_checksum | ||
| + | master_info_repository | ||
| + | relay_log_info_repository | ||
| + | relay_log_recovery | ||
| + | relay_log | ||
| + | log_bin | ||
| + | binlog_format | ||
| + | innodb_support_xa | ||
| + | sync_binlog | ||
| + | sync_master_info | ||
| + | sync_relay_log | ||
| + | sync_relay_log_info | ||
| + | slave_sql_verify_checksum | ||
| + | slave_skip_errors | ||
| + | replicate_wild_ignore_table | ||
| + | </ | ||
| + | ==== mit SQL-Dump ==== | ||
| + | |||
| + | === 1. Schrittfolge auf dem Slave === | ||
| + | |||
| + | der Slave muss angehalten und zurück gesetzt werden: | ||
| + | > echo "STOP SLAVE;" | ||
| + | > echo "STOP SLAVE; RESET MASTER; RESET SLAVE;" | ||
| + | |||
| + | === 2. Schrittfolge auf dem Master === | ||
| + | |||
| + | auf dem Master muss die GTID ausgelesen werden: | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | gtid_executed | 73667e7d-a21a-11e4-a93d-008dba029cdc: | ||
| + | +---------------+----------------------------------------------+ | ||
| + | |||
| + | Dump ziehen: | ||
| + | > mysqldump --all-databases --single-transaction --triggers --routines --events | guip -1 > dump.sql.gz | ||
| + | |||
| + | die GTID kann aber auch aus dem Dump ausgelesen werden (im Dump steht sie aber nicht als '' | ||
| + | > zcat dump.sql.gz | fgrep GTID_ | ||
| + | SET @@GLOBAL.GTID_PURGED=' | ||
| + | |||
| + | ... oder den Dump gleich an den Slave weiterreichen (ohne erst auf die Platte zu schreiben): | ||
| + | > mysqldump --all-databases --single-transaction --triggers --routines --events | mysql -h slave | ||
| + | |||
| + | === 3. Schrittfolge auf dem Slave === | ||
| + | |||
| + | Den Slave zurücksetzen und die auf dem Master ausgelesene GTID setzen: | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | gtid_executed | 73667e7d-a21a-11e4-a93d-008dba029cdc: | ||
| + | +---------------+----------------------------------------------+ | ||
| + | |||
| + | **Wird der Slave nicht zurückgesetzt (bei dem auch die GTID gelöscht wird), dann gibt es Fehlermeldungen und eine Replikation kommt nicht zu stande!** | ||
| + | |||
| + | > echo "STOP SLAVE; RESET MASTER; RESET SLAVE;" | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+-------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+-------+ | ||
| + | | gtid_executed | | | ||
| + | +---------------+-------+ | ||
| + | > echo "SET GLOBAL GTID_PURGED=' | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | gtid_executed | 73667e7d-a21a-11e4-a93d-008dba029cdc: | ||
| + | +---------------+----------------------------------------------+ | ||
| + | > echo " | ||
| + | > echo "START SLAVE;" | ||
| + | |||
| + | ==== mit Binär-Dump ==== | ||
| + | |||
| + | === 1. Schrittfolge auf dem Master === | ||
| + | |||
| + | auf dem Master muss die GTID ausgelesen werden: | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | gtid_executed | 73667e7d-a21a-11e4-a93d-008dba029cdc: | ||
| + | +---------------+----------------------------------------------+ | ||
| + | |||
| + | MySQL stoppen: | ||
| + | > service mysql stop | ||
| + | |||
| + | Binär-Dump packen: | ||
| + | > tar czf / | ||
| + | |||
| + | MySQL wieder starten: | ||
| + | > service mysql start | ||
| + | |||
| + | === 2. Schrittfolge auf dem Slave === | ||
| + | |||
| + | die alte weg räumen und die neue auspacken: | ||
| + | > service mysql stop | ||
| + | > rm -fr / | ||
| + | > tar xzvf dump.tgz -C / | ||
| + | |||
| + | die eindeutigen Einstellungen vom Master müssen unbedingt **vor** dem ersten Start entfernt werden: | ||
| + | > rm / | ||
| + | > rm / | ||
| + | |||
| + | starten und vorbereiten: | ||
| + | > service mysql start | ||
| + | > mysql_upgrade --force | ||
| + | > mysqlcheck -Ac | ||
| + | > mysqlcheck -Ar | ||
| + | |||
| + | **Wird der Slave nicht zurückgesetzt (bei dem auch die GTID gelöscht wird), dann gibt es Fehlermeldungen und eine Replikation kommt nicht zu stande!** | ||
| + | |||
| + | Den Slave zurücksetzen und die auf dem Master ausgelesene GTID setzen: | ||
| + | > echo "STOP SLAVE; RESET MASTER; RESET SLAVE;" | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+-------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+-------+ | ||
| + | | gtid_executed | | | ||
| + | +---------------+-------+ | ||
| + | > echo "SET GLOBAL GTID_PURGED=' | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | Variable_name | Value | | ||
| + | +---------------+----------------------------------------------+ | ||
| + | | gtid_executed | 73667e7d-a21a-11e4-a93d-008dba029cdc: | ||
| + | +---------------+----------------------------------------------+ | ||
| + | > echo " | ||
| + | > echo "START SLAVE;" | ||
| + | |||
| + | ==== sonstige ==== | ||
| + | |||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | > echo "SHOW GLOBAL VARIABLES LIKE ' | ||
| + | > echo "SHOW SLAVE STATUS \G; SHOW MASTER STATUS; SHOW SLAVE HOSTS;" | ||
| + | |||
