zoukankan      html  css  js  c++  java
  • Goldengate完成Mysql到Mysql的数据同步

    文档参考地址:http://blog.csdn.net/u010587433/article/details/49305019

    需求:

           使用Goldengate完成Mysql到Mysql的数据同步,源库的o2m-mc库同步到目标库的gmdc库,表名GMQDSJSP,换句话说,就是不同数据库之间表之间数据的同步

                    

    实验准备:

    系统: CentOS 7.2

    mysql版本 :  5.7-12

    mysql-1 : 192.168.68.13     mysql-2:192.168.68.14

    1、初始化

    1)目标库创建数据库

    mysql> create database gmdc;

    2)导入数据 

    将源库表GMQDSJSP数据导出,然后导入到目标库中

    [sql] view plain copy
     
    1. mysqldump -uroot -p123456  --single-transaction --flush-logs --master-data=2 -B o2m-mc --tables GMQDSJSP > /tmp/GMQDSJSP20151021.sql  
    2. mysql -uroot -p123456 gmdc <  /tmp/GMQDSJSP20151021.sql  

    2、源库

    1)修改参数

    在/etc/my.cnf的[mysqld]下添加如下参数

    [sql] view plain copy
     
    1. binlog_format=row  
    2. log-bin = mysql-bin          #开启二进制日志

    重启

    [sql] view plain copy
     
    1. service mysqld restat  

    2)创建用户并授权

    [sql] view plain copy
     
    1. mysql> GRANT ALL PRIVILEGES ON `o2m-mc`.* TO 'ogg'@localhost IDENTIFIED BY 'ogg;  
    2. mysql> GRANT ALL PRIVILEGES ON `o2m-mc`.* TO 'ogg'@'%'IDENTIFIED BY 'ogg;  
    
    

    3)解压安装创建相应目录

     
    [sql] view plain copy
     
    1. unzip ggs_121210_Linux_x64_MySQL_64bit.zip -d /home/goldengate  
    2. cd /home/goldengate  
    3. tar xvf ggs_Linux_x64_MySQL_64bit.tar   
    4. ./ggsci   
    5.   
    6. GGSCI (hadooptest05) 1> create subdirs  
    7.   
    8. Creating subdirectories under current directory /home/goldengate  
    9.   
    10. Parameter files                /home/goldengate/dirprm: already exists  
    11. Report files                   /home/goldengate/dirrpt: created  
    12. Checkpoint files               /home/goldengate/dirchk: created  
    13. Process status files           /home/goldengate/dirpcs: created  
    14. SQL script files               /home/goldengate/dirsql: created  
    15. Database definitions files     /home/goldengate/dirdef: created  
    16. Extract data files             /home/goldengate/dirdat: created  
    17. Temporary files                /home/goldengate/dirtmp: created  
    18. Credential store files         /home/goldengate/dircrd: created  
    19. Masterkey wallet files         /home/goldengate/dirwlt: created  
    20. Dump files                     /home/goldengate/dirdmp: created  

    4)配置管理进程

     
    [sql] view plain copy
     
    1. GGSCI (hadooptest05) 2>  edit params mgr  
    2.   
    3. port 7809  
    4. dynamicportlist 7840-7939  
    5. autorestart er *, retries 5, waitminutes 3  
    6. purgeoldextracts /home/goldengate/dirdat/*,usecheckpoints, minkeepdays 2  
    7. GGSCI (hadooptest05) 3> start mgr  
    8.         Manager started.  

    5)配置抽取进程

     
    [sql] view plain copy
     
    1. GGSCI (hadooptest05) 4> edit param mce1  
    2. extract mce1  
    3. sourcedb o2m-mc@192.168.7.221:3306 userid ogg password ogg  
    4. exttrail /home/goldengate/dirdat/me  
    5. discardfile  /home/goldengate/dirrpt/mce1.dsc,append  
    6. TranLogOptions AltLogDest /home/mariadb/data/binlogs.index  
    7. table o2m-mc.GMQDSJSP;  
    8. GGSCI (hadooptest05) 5> add extract mce1,tranlog,begin now  
    9. GGSCI (hadooptest05) 6> add exttrail /home/goldengate/dirdat/me,extract mce1  
    10. GGSCI (hadooptest05) 7> start mce1  
    
    
    
    
    
    
    
    

    6)配置传递进程

    [sql] view plain copy
     
    1. GGSCI (hadooptest05) 8> edit param mcp1  
    2. extract mcp1  
    3. passthru  
    4. sourcedb o2m-mc@192.168.68.13:3306 userid ogg password ogg  
    5. rmthost  192.168.68.14,mgrport 7809,compress  
    6. rmttrail  /home/goldengate/dirdat/mp  
    7.   
    8. dynamicresolution  
    9. numfiles 3000  
    10. table o2m-mc.GMQDSJSP;  
    11. GGSCI (hadooptest05) 9> add extract mcp1,exttrailsource /home/goldengate/dirdat/me  
    12. GGSCI (hadooptest05) 10> add rmttrail /home/goldengate/dirdat/mp,extract mcp1  
    13. GGSCI (hadooptest05) 11> start mcp1  
    
    
    
    
    
    

    7)创建表的定义文件

    [sql] view plain copy
     
    1. #创建参数文件  
    2. GGSCI (hadooptest05) 10>  edit param defgen  
    3.   
    4. defsfile ./dirdef/gmqdsjsjp.def  
    5. sourcedb o2m-mc@192.168.68.14:3306 userid ogg, password ogg  
    6. table o2m-mc.GMQDSJSP;  
    7. #生成表定义文件  
    8.  ./defgen paramfile ./dirprm/defgen.prm  
    9. #传至目标库目录  
    10. scp /home/mysql/goldengate/dirdef/gmqdsjsjp.def 192.168.68.14:/home/goldengate/dirdef/  

    3、目标库

    1)创建用户

    [sql] view plain copy
     
    1. mysql> GRANT ALL PRIVILEGES ON `gmdc`.* TO 'ogg'@localhost  IDENTIFIED BY 'ogg';  
    2. mysql> GRANT ALL PRIVILEGES ON `gmdc`.* TO 'ogg'@'%'  IDENTIFIED BY 'ogg';  

    2)同样解压安装并创建目录

    [sql] view plain copy
     
    1. unzip ggs_121210_Linux_x64_MySQL_64bit.zip -d /home/goldengate  
    2. cd /home/goldengate  
    3. tar xvf ggs_Linux_x64_MySQL_64bit.tar   
    4. ./ggsci   
    5.   
    6. GGSCI (db) 1> create subdirs  
    7.   
    8. Creating subdirectories under current directory /home/goldengate  
    9.   
    10. Parameter files                /home/goldengate/dirprm: already exists  
    11. Report files                   /home/goldengate/dirrpt: created  
    12. Checkpoint files               /home/goldengate/dirchk: created  
    13. Process status files           /home/goldengate/dirpcs: created  
    14. SQL script files               /home/goldengate/dirsql: created  
    15. Database definitions files     /home/goldengate/dirdef: created  
    16. Extract data files             /home/goldengate/dirdat: created  
    17. Temporary files                /home/goldengate/dirtmp: created  
    18. Credential store files         /home/goldengate/dircrd: created  
    19. Masterkey wallet files         /home/goldengate/dirwlt: created  
    20. Dump files                     /home/goldengate/dirdmp: created  

    3)配置管理进程

    [sql] view plain copy
     
    1. GGSCI (db) 3>  edit params mgr  
    2.   
    3. port 7809  
    4. dynamicportlist 7840-7939  
    5. autorestart er *, retries 5, waitminutes 3  
    6. purgeoldextracts /home/goldengate/dirdat/*,usecheckpoints, minkeepdays 2  
    7. GGSCI (db) 4> start mgr  
    8.         Manager started.  

    4)添加检查点表

    [sql] view plain copy
     
    1. GGSCI (db) 5>  dblogin sourcedb gmdc@192.168.68.14:3306 userid ogg password ogg  
    2. GGSCI (db DBLOGIN as ogg) 6>  add checkpointtable gmdc.checkpoint  
    3. GGSCI (db DBLOGIN as ogg) 7>  edit params ./GLOBALS  
    4. checkpointtable gmdc.checkpoint  

    5)配置应用进程

    [sql] view plain copy
     
    1. GGSCI (db) 1>  edit params mcr1  
    2. replicat mcr1  
    3. targetdb gmdc@192.168.68.14:3306 userid ogg password ogg  
    4. handlecollisions  
    5. sourcedefs /home/goldengate/dirdef/gmqdsjsp.def  
    6. discardfile /home/goldengate/dirrpt/mcr1.dsc,purge  
    7. map o2m-mc.GMQDSJSP, target gmdc.GMQDSJSP;  
    8.   
    9. GGSCI (db) 2> add replicat mcr1,exttrail /home/goldengate/dirdat/mp,checkpointtable gmdc.checkpoint  
    10. GGSCI (db) 3> start mcr1

    4、测试数据同步

    注意:mysql中表的大小注意区分

    info mgr  //查看启动信息

  • 相关阅读:
    springMVC静态资源
    MyBatis Generator
    使用springMVC时的web.xml配置文件
    Semaphore
    spring注解驱动--组件注册
    第1章 初始Docker容器
    docker面试整理
    第5章 运输层
    验证码
    带进度条的上传
  • 原文地址:https://www.cnblogs.com/tianfen/p/7779835.html
Copyright © 2011-2022 走看看