zoukankan      html  css  js  c++  java
  • MySQL备份和恢复[2]-基于LVM的快照备份

    准备工作

    请求锁定所有表

    mysql> FLUSH TABLES WITH READ LOCK;

    记录二进制日志文件及事件位置

    mysql> FLUSH LOGS;
    mysql> SHOW MASTER STATUS;
    mysql -e 'SHOW MASTER STATUS' > /PATH/TO/SOMEFILE

    创建快照

    lvcreate -L # -s -p r -n NAME /DEV/VG_NAME/LV_NAME

    释放锁

    mysql> UNLOCK TABLES;

    挂载快照卷,执行数据备份

    备份完成后,删除快照卷

    制定好策略,通过原卷备份二进制日志

    范例

    #在目标服务器(10.0.0.18)安装mariadb-server,不启动服务
    [root@centos8 ~]#dnf install mariadb-server
    #在源主机(10.0.0.8)执行
    [root@centos8 ~]# systemctl stop mariadb
    [root@centos8 ~]# scp /etc/my.cnf.d/mariadb-server.cnf 10.0.0.18:/etc/my.cnf.d/
    [root@centos8 ~]# scp -r /var/lib/mysql/* 10.0.0.18:/var/lib/mysql/
    [root@centos8 ~]# scp -r /data/logbin/ 10.0.0.18:/data/ #10.0.0.18事先存
    在/data/目录
    #保留属性:可以用[root@centos8 ~]#rsync -av /var/lib/mysql/
    10.0.0.18:/var/lib/mysql/
    #在目标主机(10.0.0.18)执行
    [root@centos8 ~]#chown -R mysql.mysql /var/lib/mysql/
    [root@centos8 ~]#chown -R mysql.mysql /data/logbin/
    [root@centos8 ~]#systemctl start mariadb
    

    拷贝时权限问题
    备份下来要做测试
    写一个备份还原测试脚本
    要写详细的文档。

    二进制日志很重要。
    备份之后的和崩溃之间的没办法恢复,需要二进制日志填坑。

    适合传统业务,不适合

    * * * 胖并快乐着的死肥宅 * * *
  • 相关阅读:
    rocketmq详解
    rocketmq的windows版客户端的启动步骤
    postman提交数组格式方式
    关于springmvc的包含list提交的格式
    数据库字段和实体类和map中对应类型
    怎么连接两个数据库和怎么停止上一个线程
    IDEA 创建类是自动添加注释和创建方法时快速添加注释
    centOs7 安装mysql8
    CentOS7安装Nginx及配置
    windows安装mysql8详解
  • 原文地址:https://www.cnblogs.com/bpzblog/p/13097785.html
Copyright © 2011-2022 走看看