美文网首页
mysql数据同步

mysql数据同步

作者: 無法定义 | 来源:发表于2018-08-16 16:54 被阅读15次

    测试环境数据库同步,使用主从同步,但生产环境中,为了高可用,两组数据库,每组数据库组内实现主主互备,这时主从方案就不好实现了,于是采用了定时任务,每天日终导出当天的表记录,并导入到另外一个库中,以实现部分表同步的需求。

    环境

    • 主机:centos 6.7
    • 主库:mysql5.7.21,172.18.169.16:3306
    • 备库:mysql5.7.21,172.18.169.16:13306
    • 脚本放在/opt/DbBackup

    导出脚本

    export.sh

    #!/bin/bash --login
    if  [ ! -n "$1" ] ;then
       echo '请输入开始日期'
       exit
    fi
    mysqldump --skip-lock-tables --single-transaction -h172.18.169.16 -P3306 -uroot -pbs -t trade_core pay_trade  --where=" trade_date = '$1' "> pay_trade_$1.sql
    

    导入脚本

    import.sh

    #!/bin/bash --login
    if  [ ! -n "$1" ] ;then
       echo '请输入开始日期'
       exit
    fi
    mysql -h172.18.169.16 -P13306 -uroot -pbs123456 trade_core < pay_trade_$1.sql
    

    自动同步脚本

    autoImport.sh

    #!/bin/bash --login
    cd /opt/DbBackup
    yesterday=`date  +"%Y%m%d" -d  "-1 days"`
    echo "同步$yesterday数据"
    ./export.sh $yesterday
    ./import.sh $yesterday
    

    定时任务

    crontab -e
    
    00 03 * * * /opt/DbBackup/autoImport.sh
    

    查看任务执行

    tail -f /var/spool/mail/root
    
    mark

    相关文章

      网友评论

          本文标题:mysql数据同步

          本文链接:https://www.haomeiwen.com/subject/jfyobftx.html