zoukankan      html  css  js  c++  java
  • MySQL学习笔记(27):备份与恢复

    本文更新于2020-05-03,使用MySQL 5.7,操作系统为Deepin 15.4。

    MySQL的备份分为逻辑备份和物理备份,物理备份分为冷备份和热备份。恢复分为完全恢复和不完全恢复,不完全恢复又分为基于时间点的恢复和基于位置的恢复。

    逻辑备份和恢复

    使用mysqldump进行逻辑备份,如mysqldump dbname > filename

    为了保证数据备份的一致性,MyISAM存储引擎需加上-l参数,如InnoDB等事务存储引擎应加上--single-transaction。

    恢复包括两个步骤:

    1. 使用备份数据恢复,如mysql dbname < backupfilename
    2. 将备份后至恢复前的日志重做(不要把上一步执行时的二进制日志也重做了),如mysqlbinlog logfilename | mysql dbname。可进行不完全恢复,但要注意是否包含完整的事务,如mysqlbinlog --start-date=start logfilename | mysql dbnamemysqlbinlog --start-position=position logfilename | mysql dbname

    物理备份和恢复

    冷备份和恢复

    冷备份就是停掉数据库服务,拷贝数据文件。

    热备份和恢复

    对MyISAM存储引擎,热备份可使用mysqlhotcopy,本质就是将要备份的表加读锁,然后拷贝数据文件。

    对InnoDB存储引擎,可安装使用ibbackup、Xtrabackup(包括xtrabackup和innobackupex两个主要工具)等工具。

    表数据导入导出

    表数据导出有两种方法:

    • 使用SELECT ... INTO OUTFILE filename [options]
    • 使用mysqldump -T

    表数据导入有两种方法:

    • LOAD DATA [LOCAL] INFILE filename INTO TABLE tablename [options]
    • mysqlimport dbname filename
  • 相关阅读:
    Thymeleaf模板引擎语法
    kali更新软件源
    解决kali安装成功后没有声音的问题
    SSO的误区及建议
    关于 target="_blank"漏洞的分析
    好久没来了,平时一些笔记都记在印象笔记,长传一波
    BIOS基础
    CSRF的本质及防御
    linux下stricky
    CSRF与xss的区别
  • 原文地址:https://www.cnblogs.com/garvenc/p/mysql_learning_27_backup_and_restore.html
Copyright © 2011-2022 走看看