Windows mysql 主从备份

一、基础信息:

        1.  主数据库信息:

   ip : 192.168.2.120   3306  

   数据库:housekeeping

   用于复制数据库的用户账号  liy668   密码:12345678

2.  从数据库信息:

 ip : 192.168.2.110   3306

             数据库:housekeeping 

  用户接收数据的用户账户  root   密码:123456

二、更改配置信息:

【主数据库更改】

修改主服务器的数据库配置文件(E:\xampp\mysql\bin\my.ini),在 [mysqld] 标签的最下面,添加如下代码:

#需要备份的数据库  

binlog-do-db=test

#不需要备份的数据库  

binlog-ignore-db=housekeeping

#开启二进制日志

log-bin=mysql-bin

#服务器id

server-id=1

保存退出,重启MySQL主服务器。binlog-do-db用于指定需要同步的数据库,binlog-ignore-db指定不需要同步的数据库,如果这两个参数都不设置,则从服务器会复制主服务器的所有数据库。

grant replication slave on *.* to 'liy668 '@'127.0.0.1' identified by '12345678';

查看主服务器的 master 状态:

mysql> show master status;

+------------------+----------+--------------+------------------+-------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------------+----------+--------------+------------------+-------------------+

| mysql-bin.000019 |      498 | test         | mysql            |                   |

+------------------+----------+--------------+------------------+-------------------+

 

【从数据库更改】

修改从服务器的数据库配置文件(E:\mysql\my.ini),在 [mysqld] 标签的最下面,添加如下代码:

#端口

port = 3307

#服务器id

server_id = 2

#开启二进制日志(从服务器不是必须要开启二进制日志)

log-bin=mysql-bin 

保存退出,重启MySQL服务。

连接MySQL从服务器:

mysql -uroot -p -P3307

配置复制的参数:

CHANGE MASTER TO MASTER_HOST='192.168.2.120', MASTER_PORT=3306, MASTER_USER='liy668', 

MASTER_PASSWORD='12345678', MASTER_LOG_FILE='mysql-bin.000019', MASTER_LOG_POS=0;

参数详解:

master_host: 主服务器的IP

master_user: 主服务器上新创建的用户名

master_password: 用户的密码

master_port: 主服务器的端口,如果未曾修改,默认即可。

master_log_file: 主服务器二进制日志文件的名称,填写查看主服务器的master状态时显示的File的值

master_log_pos: 日志的位置,填写查看主服务器的master状态时显示的Position的值

启动从服务器的slave复制功能:

start slave;

查看从服务器的slave状态:

mysql> show slave status \G

*************************** 1. row ***************************

               Slave_IO_State: Waiting for master to send event

                  Master_Host: 192.168.2.120

                  Master_User: liy668

                  Master_Port: 3306

                Connect_Retry: 60

              Master_Log_File: mysql-bin.000019

          Read_Master_Log_Pos: 120

               Relay_Log_File: hp-PC-relay-bin.000004

                Relay_Log_Pos: 283

        Relay_Master_Log_File: mysql-bin.000009

             Slave_IO_Running: Yes

            Slave_SQL_Running: Yes

如果 Slave_IO_Running 和 Slave_SQL_Running 的值都为 Yes,则说明主从复制的所有配置已成功,即从服务器已经可以自动与主服务器的数据库数据实现同步了。

 

 

 

 

 

你可能感兴趣的:(mysql)