windows下mysql主从同步备份步骤

windows下mysql主从同步备份步骤  

2011-08-24 00:10:13|  分类: mysql/mssql|举报|字号 订阅

 
 

示例一:

windows下mysql主从同步备份步骤

A:主服务器
IP地址:192.168.1.124
B:从服务器
IP地址:192.168.1.125
 
前提:设置同步之前请把保持两个数据库的数据一样!
 
对A服务器的配置进行修改,打开mysql/my.ini文件,在[mysqld]下面添加如下内容:

#主服务器A的ID值
server-id=1 
#二进制变更日值
log-bin=E:\mail\mysql\data
重启A服务器
 
对B服务器的配置进行修改,打开mysql/my.ini文件,在[mysqld]下面添加如下内容:
[mysqld]
server-id=2
master-host=192.168.1.124
master-user=root
master-password=d5qj0y4stk
 
master-port=3306 #主服务器端口
master-connect-retry=60 #同步时间间隔为60秒
//以下内容为可选
#需要同步的数据库
replicate-do-db=mail
#不需要同步的数据库,忽略掉
binlog-ignore-db=mysql
重启服务器!!
show slave status\G;
 
实验终于成功,经最后测试添加删除修改数据都可以同步了!
 
示例二:

目的:
有两台MySQL数据服 务器A和B,使A为主服务器,B为从服务器,初始状态时,A和B中的数据信息相同,当A中的数据发生变化时,B也跟着发生相应的变化,使得A和B的数据信 息同步,达到备份的目的。

原理:
负责在主、从服务器传输各种修改动作的媒介是主服务器的二进制变更日志,这个日志记载着需要传输给从服务器的各种修改动作。因此,主服务器必须激活二进制 日志功能。从服务器必须具备足以让它连接主服务器并请求主服务器把二进制变更日志传输给它的权限。
        
环境:
A、B的MySQL数据库版本同为5.0.18
A:
操作系统:Windows 2003
IP地址:10.100.0.100
B:
操作系统:Windows 2000 server
的IP地址:10.100.0.200

配置过程:
1、在A的数据库中建立一个备份帐户,命令如下:
GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* 
TO backup@’10.100.0.200’ 
IDENTIFIED BY ‘1234’;

建立一个帐 户backup,并且只能允许从10.100.0.200这个地址上来登陆,密码是1234。

2、因为 mysql版本新密码算法不同,所以进入mysql下,输入:set password for'backup'@'10.100.0.200'=old_password('1234');


3、关停A服务器,将A中的数据拷贝到B服务器中,使得A和B中的数据同步,并且确保在全部设置操作结束前,禁止在A和B服务器中进行写操作,使得两数据 库中的数据一定要相同!

4、对A服 务器的配置进行修改,打开mysql/my.ini文件,在[mysqld]下面添加如下内容:
server-id=1
log-bin=c:\log-bin.log

server- id:为主服务器A的ID值
log-bin:二进制变更日值

4、重启A 服务器,从现在起,它将把客户堆有关数据库的修改记载到二进制变更日志里去。

5、关停B 服务器,对B服务器锦熙配置,以便让它知道自己的镜像ID、到哪里去找主服务器以及如何去连接服务器。最简单的情况是主、从服务器分别运行在不同的主机上 并都使用着默认的TCP/IP端口,只要在从服务器启动时去读取的mysql/my.ini文件里添加以下几行指令就行了。
[mysqld]
server-id=2
master-host=10.100.0.100
master-user=backup
master-password=1234
//以下内容为可选 
replicate-do-db=backup

server- id:从服务器B的ID值。注意不能和主服务器的ID值相同。
master-host:主服务器的IP地址。
master-user:从服务器连接主服务器的帐号。
master-password:从服务器连接主服务器的帐号密码。
replicate-do-db:告诉主服务器只对指定的数据库进行同步镜像。

6、重启从 服务器B。至此所有设置全部完成。更新A中的数据,B中也会立刻进行同步更新。如果从服务器没有进行同步更新,你可以通过查看从服务器中的 mysql_error.log日志文件进行排错。


8、查看日志一些命令
1, show master status\G;
           在这里主要是看log-bin的文件是否相同。
    show slave status\G;
    在这里主要是看:
                   Slave_IO_Running=Yes
                   Slave_SQL_Running=Yes
   如果都是Yes,则说明配置成功.

2,在 master上输入show processlist\G;
     mysql> SHOW PROCESSLIST\G
     *************************** 1. row ***************************
       Id: 2
       User: root
       Host: localhost:32931
       db: NULL
       Command: Binlog Dump
       Time: 94
       State: Has sent all binlog to slave; waiting for binlog to
         be updated
       Info: NULL

   如果出现Command: Binlog Dump,则说明配置成功.

posted @ 2014-10-15 18:21  南来的雨  阅读(320)  评论(0)    收藏  举报