zoukankan      html  css  js  c++  java
  • xtrabackup备份mysql数据库方法

    1.安装 xtrabackup 工具包

    下载percona yum源

    https://www.percona.com/redir/downloads/percona-release/redhat/percona-release-0.1-4.noarch.rpm

    rpm -ivh percona-release-0.1-4.noarch.rpm

    通过 yum 方式安装 percona-xtrabackup

    yum install percona-xtrabackup -y

    *若提示GPG密钥不适用,可以编辑/etc/yum.repos.d/percona-release.repo文件,关闭GPG校验

     

    2.通过 innobackupex 备份数据库

    连接到服务:innobackupex 或者xtrabackup 通过--user和--password 连接到数据库服务, --defaults-file 指定 mysql 配置文件目录,/mnt 是将备份存放的目录

    *可以把数据库用户名和密码添加到my.cnf数据库配置文件中

    innobackupex --defaults-file=/etc/my.cnf --user=root /mnt

     ——————————————————————————————

    压缩备份(可用参数:--parallel=4:加速备份,这个选项会指定 xtrabackup 备份文件的线程数)

    innobackupex --defaults-file=/etc/my.cnf --user=root --stream=tar /mnt | gzip - > /mnt/mysqlbak1.tar.gz

    提取压缩

    tar -zxivf /mnt/mysqlbak1.tar.gz

     ——————————————————————————————

    自动备份脚本

    #!/bin/bash
    log=mysql_`date +%y%m%d%H%M`.log
    str=mysql_`date +%y%m%d%H%M`.tar.gz
    innobackupex --defaults-file=/etc/my.cnf --user=root --password=123456 --database=mysql --stream=tar /mnt/autoback_data/ 2>/mnt/autoback_data/$log | gzip
    - > /mnt/autoback_data/$str

    3.恢复数据库

    prepare 数据库

    创建完备份之后的数据还不能马上用来还原,需要回滚未提交事务,前滚提交事务, 让数据库文件保持一致性

    innobackupex --defaults-file=/etc/my.cnf --apply-log /mnt/2019-02-20_10-09-54/
    innobackupex --defaults-file=/etc/my.cnf --copy-back /mnt/2019-02-20_10-09-54/

    修改恢复的数据目录权限

    chown -R mysql:mysql /var/lib/mysql

    *数据文件目录可以在my.cnf配置文件中自定义

  • 相关阅读:
    CentOS7 Install Consul
    CentOS6 Install kafka
    CentOS7 Install Shipyard
    zabbix_sender
    python mail
    CentOS6.8 RPM包安装快速zabbix22
    python与shell通过微信企业号发送消息
    zabbix监控之grafana
    linux查看进程(java)启动时间
    (ubuntu)安装配置jenkins(新版)
  • 原文地址:https://www.cnblogs.com/omgasw/p/10405303.html
Copyright © 2011-2022 走看看