mysql如何实现双机热备

2025-04-25 23:25:21

本篇经验将和大家介绍Windows下使用mysql双机热备功能,希望对大家的工作和学习有所帮助!

工具/原料

准备两台服务器(电脑),接入局域网中,使互相ping得通对方

两台服务器都安装mysql-server-5.1,必须保证mysql的版本一致

假设,服务器A:192.168.0.2,服务器B:192.168.0.3

创建同步用户

1、在主服务器上为从服务器建立一个连接账户,该账户必须授予replication slave权限。因为服务器A和服务器B互为主从,所以都要分别建立一个同步用户。

2、服务器A,如下图所示:mysql> grant rep盟敢势袂lication slave on *.* to 'r髫潋啜缅eplicate'@'192.168.0.3' identified by '123456';mysql> flush privileges;

mysql如何实现双机热备

3、服务器B,如下图所示:mysql> grant replication slave on *.* to 'replicate'@'192.168.0.2' identified by '123456';mysql> flush privileges;

mysql如何实现双机热备

测试同步用户

1、创建好同步连接账户后,我们可以在从服务器(slave)上用replicate账户对主服务器(master)数据库进行访问,看下是否能连接成功。

2、服务器A,如下图所示:C:\Users\Administrator> mysql -h192.168.0.3 -ureplicate -p123456

mysql如何实现双机热备

3、服务器B,如下图所示:C:\Users\Administrator> mysql -h192.168.0.2 -ureplicate -p123456

mysql如何实现双机热备

4、如果出现"Welcome to the MySQL monitor. "等字样,则表示能登录成功,说明可以对这两台服务器进行双机热备操作。

修改配置文件my.ini

1、打开电脑A上"mysql安装路径\my.ini"文件,并在文件的末尾添加如下配置:

2、服务器A,如下图所示:server-id=1log-bin=水瑞侮瑜backuplogsync_binlog=1binlog_format=rowauto_increment_increment = 2auto_increment_offset = 1max_binlog_size=512mexpire_logs_days=1binlog_do_db=oabinlog_ignore_db=mysqlbinlog_ignore_db=information_schemareplicate_do_db=oareplicate_wild_ignore_table=oa.logslave_skip_errors=all   

mysql如何实现双机热备

3、服务器B,如下图所示:server-id=2log-bin=水瑞侮瑜backuplogsync_binlog=1binlog_format=rowauto_increment_increment = 2auto_increment_offset = 2max_binlog_size=512mexpire_logs_days=1binlog_do_db=oabinlog_ignore_db=mysqlbinlog_ignore_db=information_schemareplicate_do_db=oareplicate_wild_ignore_table=oa.logslave_skip_errors=all

mysql如何实现双机热备

4、分别重启服务器A和服务器B上的mysql服务,如果成功则配置没有问题,如下图所示:C:\Users\Administrator> net stop mysql;C:\Users\Administrator> net start mysql;

mysql如何实现双机热备

5、分别查看服务器A和服务器B的主服务器状态,如下图所示:mysql> show master status\G;

mysql如何实现双机热备

6、分别在服务器A和服务器B上用change master to命令指定同步位置。

7、服务器A,如下图所示:mysql> stop slave;mysql> change master to master_host='192.168.0.3',master_user='replicate',master_password='123456',master_log_file='backuplog.000001',master_log_pos=0;mysql> start slave;

mysql如何实现双机热备

8、服务器B,如下图所示:mysql> stop slave;mysql> change master to master_host='192.168.0.2',master_user='replicate',master_password='123456',master_log_file='backuplog.000001',master_log_pos=0;mysql> start slave;

mysql如何实现双机热备

9、分别查看服务器A和服务器B的从服务器状态,如下图所示:mysql> show slave status\G;

mysql如何实现双机热备

10、查看Slave_IO_Running、Slave_SQL_Running两项值均为Yes,即表示设置从服务器成功。

11、至此,双机热备配置完成,服务器A和服务器B的数据库有做修改,两边的数据库都会同步。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢