weixin_42300955 2009-03-19 09:59
浏览 133
已采纳

数据库数据同步

请问mysql实现数据同步除了用除法器以外 还有没有什么更好的解决方案
数据库如果是异构的时候怎么解决?~~~
请高手们指点一下呵呵……

  • 写回答

1条回答 默认 最新

  • ncradovi 2009-03-19 11:39
    关注

    windows xp 下设置数据库同步

    环境:两台windows xp系统机器,并且安装同一版本的数据库5.0.17

    两台机器Ip

    A:173.26.100.62

    B:173.26.100.61

    此例为A为主服务器,B为从服务器,A服务器上的数据变更会更新到B服务器数据库当中
    步骤: 1 .A机器上创建数据库tsas,设置数据库访问权限,也就是创建一个用户和密码,目的在于在B机器上用创建的这个用户能够正常连接A机器的数据库。

    grant file on . to backup@'173.26.100.61' identified by '1234'; 2.在A服务器的mysql目录下编辑my.ini,加入如下语句:

    server-id=1
    log-bin=C:\mysqlbak\log-bin.log

    3.重起A机器,可以用命令show master status 察看状态

    4 设置B服务器,打开B机器mysql目录下的my.ini,加入以下语句:

    server-id=2
    master-host=173.26.100.62
    master-user=backup #同步用户帐号
    master-password=1234
    master-port=3306
    master-connect-retry=60 预设重试间隔60秒
    replicate-do-db=tsas 告诉slave只做backup数据库的更新

    5.重新启动B机器,可以用命令 show slave status察看B机器状态

    6.测试:
    向A批量插入大数据量数据,那么在B机器当中察看相关的表格,B机器与A机器中的数据是一致的,这样就可以达到B机器同步A机器的数据。

    原理机制:
    在镜像关系中,一个MySQL服务器扮演主服务器角色,另外一个或多个服务器扮演从服务器角色,从服务器中的数据和主服务器中的数据完全一样。

    在镜像建立之前,主服务器和从服务器必须进行一次完全同步。同步之后,在主服务器上所做的操作将会在从服务器上再实现,主服务器上的操作不是直接作用于从服务器上的。

    负责在主、从服务器上传输各种修改动作的媒介是主服务器上的二进制变更日志,该日志记录着主服务器上所有的操作动作。因此,主服务器必须激活二进制日志功能。

    从服务器必须有足够的权限从主服务器上接收二进制日志文件。镜像协调信息记录从服务器的进展情况,包括,从服务器正在读取的二进制变更日志文件名和它在该文件里的当前读写位置。

    每个主服务器可以有多个从服务器,但每个从服务器只能有一个主服务器。但MySQL服务器允许把一个从服务器作为另一个从服务器的主服务器,这样就可创建一个镜像服务器链。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度
  • ¥15 vue3页面el-table页面数据过多