新版本的mysql 主从设置与旧版本设置方式改动很大,my.cnf只需要配置
bin-log 和 server -id
示例:
mater
# Replication Master Server (default)
# binary logging is required for replication
log-bin=mysql-bin
# binary logging format - mixed recommended
binlog_format=mixed
# 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 = 202
server-id 一般设置为ip地址末尾
新建用户:
mysql > GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backup@’10.100.0.200’ IDENTIFIED BY ‘1234’;
启动master
service mysql start
查看master 状态
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 | 1271 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
至此master 配置完成
配置SLAVE
server-id = 44
log-bin=mysql-bin 不是必须
binlog_format=mixed
启动 SLAVE
建立主从复制
mysql> CHANGE MASTER TO MASTER_HOST=’..*.202’, MASTER_USER=’admin’, MASTER_PASSWORD=”, MASTER_LOG_FILE=’mysql-bin.000001’, MASTER_LOG_POS=0;
Query OK, 0 rows affected (0.01 sec)
“`
查看 SLAVE 状态
show slave status\G;
mysql> SHOW SLAVE STATUS\G;
***************** 1. row *****************
Slave_IO_State: Waiting for master to send event
Master_Host: ..*202
Master_User: admin
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 1569
Relay_Log_File: hadoop3-relay-bin.000002
Relay_Log_Pos: 1715
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 1569
Relay_Log_Space: 1873
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 202
1 row in set (0.00 sec)
ERROR:
No query specified
开始主从备份
START SLAVE;
停止
STOP SLAVE;
mysql 主从备份不仅和可以时时备份数据,还可以用于读写分离
对于系统高可用,则需要更多的软件支持。