• mysql异机备份


    xx.xx..4.43----xx.xx..4.51

    1、配置client通过密钥来连接server

    43机器上:

    /root/.ssh 目录下执行

    ssh-keygen -t rsa

    ls  /root/.ssh会发现在/root/.ssh下生成一对密钥id_dsa和id_dsa.pub,将生成的公钥id_dsa.pub拷贝到server的/root/.ssh目录下:

    scp  -P 10022 /root/.ssh/id_dsa.pub  xx.xx..4.51:~/.ssh/ id_dsa.pub

    51上:

    cat id_rsa.pub >>authorized_keys

    在43上ssh 登录51 免密登录---ok

     

    2、编写备份数据的脚本

    可以通过编写shell脚本,执行脚本实质上是一个指令集,它的编写正确与否是实现自动异地备份数据库的关键所在。

    假设shell脚本命名为auto.sh,处于目录/home/mysql/autobackup下,脚本编辑如下:

     

    DATE=`date +%Y%m%d`

    DATEOLD=`date -d"-3 day" +%Y%m%d`

    mysqldump  --database mysql>"home/mysql/autobackup/$DATE.sql" -uroot -h localhost –p mysql

    tar -czvPf /home/mysql/autobackup/$DATE.tar.gz  /home/mysql/autobackup

    scp -P 10022 /home/mysql/autobackup/$DATE.tar.gz xx.xx..4.51:/home/backup1

    rm -rf /opt/$DATEOLD.tar.gz

     

    针对以上脚本,需要注意以下几点:

    u       DATE和DATEOLD是系统用来获取当前以及3天前日期的参数,格式书写十分重要,“`”是指tab键上方的符号,“+”前一定要有空格。

    u       client下的目录/opt/backup以及server下的目录/opt/backup1事先要存在

    u       压缩指令为tar -czvPf,不加P参数系统会有报错提示,因为此时系统把/opt/backup当成相对路径。       

    u       auto.sh的文件属性为755

    注:auto.sh中的每一条指令可通过手动执行来验证其正确性,无误后进行下一步操作。

     

     

  • 相关阅读:
    对unsigned int和int进行移位操作的区别
    ctags支持的语言
    ubuntu使用问题与解决记录[持续更新]
    [转]python起步之卡尔曼滤波
    Android Studio的安装使用记录[持续更新]
    web.py实现jsonp
    关于python的import
    git常用命令[持续更新]
    flot图表的使用
    迁移web.py项目至git@osc的项目演示平台
  • 原文地址:https://www.cnblogs.com/zhxiaoxiao/p/9767600.html
Copyright © 2020-2023  润新知