mysql主主热备总结
环境说明:
一、两台虚拟服务器
windows2008 R2,mysql 5.5
IP1:192.168.95.11(主库); IP2:192.168.95.12(从库)
二、主从复制
前提:
1.主从数据库名称必须一致,否则影响读写分离;
2.主库的数据新建一个备份,然后还原到从库;保证主从数据库一致;
开始构建主从复制:
1.在11机器上创建一个12主机可以登陆的账号
mysql>GRANT REPLICATION SLAVE ON *.* TO ‘mysql12’@’192.168.95.12’ IDENTIFIED BY ‘mysql12’;
mysql>FLUSH PRIVILEGES;
2.在mysql配置文件my.ini中添加:
--192.168.95.11
[mysqld]
log-bin=mysql-bin //开启二进制
server-id=11 #任意自然数n,只要保证两台MySQL主机不重复就可以了。
auto_increment_increment=2 #步进值auto_imcrement。一般有n台主MySQL就填n
auto_increment_offset=1 #起始值。一般填第n台主MySQL。此时为第一台主MySQL
binlog-ignore=mysql #忽略mysql库【我一般都不写】
binlog-ignore=information_schema #忽略information_schema库【我一般都不写】
binlog-do-db=ceshi_test #要同步的数据库,默认所有库
--192.168.95.12
server-id=12
log-bin=mysql-bin
auto_increment_increment=2
auto_increment_offset=2
binlog-do-db=aa
重启mysql服务
3.查看11主机文件名和位置
mysql>SHOW MASTER STATUS;
4.在12主机的my.ini文件配置
[mysqld]
serverid=2
log-bin=mysql-bin
重启mysql服务器
5.在12主机执行
mysql>change master to master_host='192.168.95.11' >master_user='user12',master_password='user12',master_log_file='mysql-bin.000048',master_log_pos=432;
完成主从配置;
测试主从复制;
在12主机中
mysql>start slave;//开启主从复制
mysql>show slave status\G //查看主从复制是否成功;
当看到Slave_IO_Running:YES,Slave_SQL_Running=YES;表明状态正常;
主主配置:
1.在12主机上创建11主机可以登陆的用户
mysql>GRANT REPLICATION SLAVE ON *.* TO ‘mysql11’@’192.168.95.11’ IDENTIFIED BY ‘mysql11’;
mysql>FLUSH PRIVILEGES;
2.在12上查看二进制名称和位置
mysql>show master status;
3.在12主机执行
mysql>CHANGE MASTER TO
MASTER_HOST=’192.168.95.12’,
MASTER_USER=’user11’,
MASTER_PASSWORD=’mysql11’,
MASTER_LOG_FILE=’mysql-bin.000084’,
MASTER_LOG_POS=107;
主主配置完毕;