Win下MYSQL主从数据库同步设置实现数据同步更新

系统的需要实时备份,但是之前考虑的webservice备份数据的方法,对程序运行的效率有较大影响。查阅资料后发现,可以设定主从服务器来达到数据备份的目的。数据备份的任务全部交给mysql服务器完成,对团购系统的程序运行影响较少,并且可以达到实时备份的效果

系统的需要实时备份,但是之前考虑的webservice备份数据的方法,对程序运行的效率有较大影响。查阅资料后发现,可以设定主从服务器来达到数据备份的目的。数据备份的任务全部交给mysql服务器完成,对团购系统的程序运行影响较少,并且可以达到实时备份的效果。下面是mysql主从服务器设定的一些步骤(测试环境:主服务器是win2003,mysql版本 5.1.51;从服务器是win7, mysql版本是 5.1.51)。

1、 在主服务器上新增一个用于备份的用户,全局权限设定为RELOAD, SUPER, REPLICATION SLAVE。将要备份的数据库的全部权限分配给改用户,并且该用户可以远程登录主服务器。

2、 在主服务器的my.ini中的[mysqld]下面添加:

server-id=1 #主服务器id

log-bin=D:mysqllogmysql.log #备份

binlog-do-db=tg #备份数据库

3、 重启主服务器。

4、 设定从服务器,在从服务器的my.ini中的[mysqld]下面添加:

server-id=2 #必须与主服务器的id不一致

master-host=***.***.***.*** #主服务器ip

log-bin=D:mysqllogmysql.log

master-user=slave #主服务器上新增的用户名

master-password=123 #密码

master-port=3306 #主服务器端口

master-connect-retry=60 #同步时间间隔为60秒

5、 重启从服务器mysql。在主服务器mysql上运行SHOW MASTER STATUS 记录下File、Position字段值。启动从服务器mysql,运行一下命令:

change master to master_host=***.***.***.*** ;

change master to master_user= ‘slave’;

change master to master_password=123;

change master to master_log_file=mysql.000001 # 刚刚记录的File值

change master to master_log_pos=38392;#刚刚记录的position值,

然后运行 start slave;show slave status如果成功的话,可以返回一条与主服务器有关的数据,

这是回到主服务器上运行 show processlist 就可以查看到从服务器的连接状态。到此主从服务器的设定完成