您的位置: 飞扬精品软件园 >> 文章中心 >> 网络通讯 >> 服务器类 >> MySQL 双向数据同步解决方案

相关文章链接

本类文章排行

最新新闻资讯

    MySQL 双向数据同步解决方案

    MySQL 双向数据同步解决方案


    • 阅览次数: 文章来源: 原文作者: 整理日期: 2010-05-22

    国内网络的现状就让人很郁闷,为什么?因为明明很快的网络,非要搞个电信网通互联不通,跨网访问的时候速度非常慢。不得已只能在电信和网通各放一台服务器,那么这种情况下,数据库又如何同步呢?
    以下的文章或许可以帮助大家:

    一、配置主master(192.168.0.1)数据库如下:

    1、 DOWLOAD mysql-4.1.15.tar.gz源码包,在192.168.0.1(master机器)手动编译安装
    注:MASTER 服务器同时担任SLAVE 服务器功能因为需要双向同步
    [root@localhost mysql-4.1.15]# tar –xzvf mysql-4.1.15.tar.gz
    [root@localhost mysql-4.1.15]# cd mysql-4.1.15
    [root@localhost mysql-4.1.15]#./configure –prefix=/usr /macro/mysql --with-charset=’gbk’
    [root@localhost mysql-4.1.15]#make
    [root@localhost mysql-4.1.15]#make install
    [root@localhost mysql-4.1.15]#cp support-file/my-medium.cnf /etc/my.cnf
    [root@localhost mysql-4.1.15]#cd ../mysql
    [root@localhost mysql-4.1.15]#bin/mysql_install_db --user=mysql (注:如果在所有配置都完成后,双向同步不能成功,则问题有可能出在这一行命令,那么就重新编译安装mysql,然后到此步骤后,执行如下命令:
    [root@localhost mysql-4.1.15]#bin/mysql_install_db --user=mysql --log-bin
    [root@localhost mysql-4.1.15]# bin/mysql_install_db --user=mysql )
    [root@localhost mysql-4.1.15]#chown –R root . (root 后边有个点意思是所有的文件)
    [root@localhost mysql-4.1.15]#chwon –R mysql var/
    [root@localhost mysql-4.1.15]#chgrh –R .
    [root@localhost mysql-4.1.15]#bin/mysqld_safe –user=mysql &
    [root@localhost mysql-4.1.15]#bin/mysql
    mysql>grant all privileges on *.* to dbmysql@192.168.0.2 identified by ‘1234’;
    mysql>exit
    2.配置/etc/my.cnf
    [root@localhost mysql-4.1.15]#vi /etc/my.cnf
    加入如下代码:
    log-bin
    server-id = 1
    sql-bin-update-same
    binlog-do-db=dbmysql
    master-host=192.168.0.2
    master-user=dbmysql
    master-password='1234'
    master-port=3306
    master-connect-retry=30
    replicate-do-db=dbmysql
    log-slave-updates
    编辑完my.cnf 后保存退出,之后执行如下命令:
    [root@localhost mysql-4.1.15]#bin/mysqladmin shutdown


    二、配置副SLAVE(192.168.0.2)数据库如下:

    注意:这台机器首先是SLAVE服务器也同时担任MASTER服务器

    1、DOWLOAD mysql-4.1.15.tar.gz源码包,在192.168.0.2(SLAVE机器)手动编译安装
    [root@localhost mysql-4.1.15]# tar –xzvf mysql-4.1.15.tar.gz
    [root@localhost mysql-4.1.15]# cd mysql-4.1.15
    [root@localhost mysql-4.1.15]#./configure –prefix=/usr /macro/mysql --with-charrset=’gbk’
    [root@localhost mysql-4.1.15]#make
    [root@localhost mysql-4.1.15]#make install
    [root@localhost mysql-4.1.15]#cp support-file/my-medium.cnf /etc/my.cnf
    [root@localhost mysql-4.1.15]#cd ../mysql
    [root@localhost mysql-4.1.15]#bin/mysql_install_db --user=mysql --log-bin
    [root@localhost mysql-4.1.15]#chown –R root . (root 后边有个点意思是所有的文件)
    [root@localhost mysql-4.1.15]#chwon –R mysql var/
    [root@localhost mysql-4.1.15]#chgrh –R .
    [root@localhost mysql-4.1.15]#bin/mysqld_safe –user=mysql &
    [root@localhost mysql-4.1.15]#bin/mysql
    mysql>grant all privileges on *.* to dbmysql@192.168.0.2 identified by ‘1234’;
    mysql>exit
    2.配置/etc/my.cnf
    log-bin
    server-id = 2
    binlog-do-db=dbmysql
    sql-bin-update-same
    master-host=192.168.0.1
    master-user=dbmysql
    master-password='1234'
    master-port=3306
    master-connect-retry=30
    replicate-do-db=dbmysql
    log-slave-updates
    #
    编辑完my.cnf 后保存退出,之后执行如下命令:
    [root@localhost mysql-4.1.15]#bin/mysqladmin shutdown
     
    三、测试mysql数据库双向同步:

    1. 重新启动两台mysql数据库
    2. 在两台mysql服务器上执行如下步骤查看配置:
    mysql> show master status;
    mysql>show slave status;
    察看配置是否正确
    3、在配置文件/etc/my.cnf中要同步的数据库是dbmysql,所以新建mysql服务器没有dbmysql数据库,执行如下命令建立dbmysql数据库(注:由于已经配置为双向数据库同步,所以在任何一台MYSQL服务器上执行如下命令都可以在另一台机器上都能同步:)
    以192.168.0.1服务器为例:
    mysql> create database dbmysql:
    当你在登陆到192.168.0.2服务器的时候就可以看到dbmysql数据库了。同理当你在服务器172.168.0230上建立数据库dbmysql的时候在192.168.0.1
    上就可以同步了。同时也可以建立table测试。


查看所有评论

网友对MySQL 双向数据同步解决方案的评论

网名:
主题:
内容:
验证码: