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
    

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

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

    适合传统业务,不适合

    * * * 胖并快乐着的死肥宅 * * *
  • 相关阅读:
    JSON开源库API【转载】https://nlohmann.github.io/json/index.html
    ZeroMQ示例(C/C++/PHP)详解三种模式
    Makefile精髓篇【转】
    JNI数组操作
    【摘要】malloc、calloc和realloc的用法
    容器内部安装scp,拷贝到外部物理机
    关于VMware虚拟机安装镜像时黑屏的解决办法
    linux下打压缩解压
    高效载入“大”图片
    后台执行Bitmap加载
  • 原文地址:https://www.cnblogs.com/bpzblog/p/13097785.html
Copyright © 2011-2022 走看看