我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux下MySQL的备份和恢复

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux下MySQL的备份和恢复


MySQL备份的原因


 1. 灾难恢复
 2. 审计 
 3. 测试1234512345

mysql的备份类型


 1. 根据服务器的在线状态:
    热备:服务器处于运行状态
    冷备:服务器出去停止状态
    温备:服务器处于半离线状态,只能读,但是不能写
 2. 根据备份的数据集:
    完全备份:备份整个数据库
    部分备份:备份某个表
 3. 根据备份时的接口:
    物理备份:直接将数据库文件从磁盘上复制出来
    逻辑备份:把数据从数据库中提取出来备份成文本文件
 4. 根据数据量进行备份:
    完全备份:备份从创建数据库到目前为止的数据
    增量备份:备份从上次进行完全备份结束到目前为止的数据
    差异备份:1234567891011121314151612345678910111213141516

MySQL备份对象

数据+配置文件+代码(存储过程等)+os相关的配置文件(如crontab配置计划及脚本)11

使用mysqldump工具进行数据备份和恢复


 1. mysqldump命令格式
    a.备份多个或者一个数据库
    mysqldump [option] --database db_name1 db_name2...
    b.备份某个数据库中的某张表
    mysqldump [option] db_anme table1 tables2 ...
    c.备份全部数据库
    mysqldump [option] --alldatabases
 2. option
    -u user:指定以哪个用户的身份进行备份    -p password:指定用户的密码    -h host:指定备份的数据库
    --local-all-tables:请求锁住所有备份的表    --local-tables:备份那张表锁住那张表    --single-transaction:能够对InnoDB存储引擎实现热备。(不常用)
    --events:备份事件调度器    --routines:备份存储过程和存储函数    --triggers:备份触发器
    --flush-log:备份前,请求到锁之后滚动日志
 3. 常用备份格式
    mysqldump -uroot -p -h --database|db_name|--all-databases db_name|table --local-tables --flush-log

 4. 恢复备份
    a.关闭当前session的sql_log_bin
    b.mysql<source /path/*.sql
    c.开启二进制文件日志1234567891011121314151617181920212223242526272829303112345678910111213141516171819202122232425262728293031

mysqldump备份测试

备份数据库wordpress
库中表的列表
mysql> show tables;
+-----------------------+
| Tables_in_wordpress   |
+-----------------------+| wp_commentmeta        || wp_comments           || wp_links              || wp_options            || wp_postmeta           || wp_posts              || wp_term_relationships || wp_term_taxonomy      || wp_termmeta           || wp_terms              || wp_usermeta           || wp_users              |+-----------------------+12 rows in set (0.00 sec)1234567891011121314151617181920212212345678910111213141516171819202122
  1. 备份整个数据库
     Linux下MySQL的备份和恢复
     Linux下MySQL的备份和恢复

  2. 还原刚才备份的数据库
     Linux下MySQL的备份和恢复
     Linux下MySQL的备份和恢复

使用xtrabackup工具进行备份


 1. 下载安装xtrabackup
     [root@www ~]# wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.7/binary/redhat/6/x86_64/percona-xtrabackup-24-2.4.7-1.el6.x86_64.rpm
     [root@www ~]# wget http://dl.fedoraproject.org/pub/epel/6/x86_64//libev-4.03-3.el6.x86_64.rpm
     [root@www ~]# yum install libev-4.03-3.el6.x86_64.rpm 
     [root@www ~]# yum install --skip-broken percona-xtrabackup-24-2.4.7-1.el6.x86_64.rpm 

 2. 备份后生成的文件    xtrabackup_checkpoints:记录备份类型,备份状态,lsn(日志序列号)等信息。
    xtrabackup——binary:备份中用到的xtrabackup的可执行文件    xtrabackup_binlog_info:当前服务器正在使用的二进制日志文件及备份道这一刻的时间位置    xtrabackup_binlog_pos_innodb:二进制文件的但前position
    backup_my.cnf:备份命令用到的配置选项信息。12345678910111213141234567891011121314

1. 完全备份和恢复

格式:>innobackupex --user=  --password= --apply-log /path/to/back_dir/结果:completes ok!1212

测试完整备份数据库
 Linux下MySQL的备份和恢复
 Linux下MySQL的备份和恢复
 Linux下MySQL的备份和恢复

测试恢复

格式:
    >innobackupex --user= --password= --copy-back /path/to/back_dir/1212

 Linux下MySQL的备份和恢复

创建新文件讲原有数据库全部移到目录下
 Linux下MySQL的备份和恢复
恢复
 Linux下MySQL的备份和恢复
 Linux下MySQL的备份和恢复

增量备份

格式:    #innobackupex --incremental /path/to/back_dir --incremental-basedir=以那个备份文件伪基础
还原:将增量备份整合道完全备份上去
    先准备完全备份:        #innobackupex --apply-log --redo-only   完全备份路仅(base-dir)
    在准备第一次增量备份:        #innobackupex --apply-log --redo-only  base-dir --incremental-dir=one_base_dir
    在准备第二次增量备份:        #innobackupex --apply-log --redo-only  base-dir --incremental-dir=two_base_dir        ..
        ..      。

恢复:    >innobackupex --copy-back base-dir12345678910111213141234567891011121314

a.第一次完整备份
 Linux下MySQL的备份和恢复

操作数据库增加数据
 Linux下MySQL的备份和恢复

第一次增量备份
 Linux下MySQL的备份和恢复
 Linux下MySQL的备份和恢复

准备完全备份
 Linux下MySQL的备份和恢复

准备第一次增量备份文件
 Linux下MySQL的备份和恢复

恢复
 Linux下MySQL的备份和恢复

结果
 Linux下MySQL的备份和恢复
 Linux下MySQL的备份和恢复

xtrabackup进行表的导入和导出

在进行表的导出时,需要启用服务器的innodb_file_per_table这个选项。
在进行表的导入时,需有启用服务器的innodb_file_per_table和innodb_expand_import选项
导出表
    innobackupex --apply-log --export /path/base_dir
    此命令会为每个innodb表空间创建一个.exp结尾的文件,这个文件可以导入其他服务器
导入表:
    1,在服务器上创建一个与此结构相同的表。
    2,然后删除此表的表空间:        alter table 表 discard tablespace;    3,将.exp文件复制到数据库服务器的数据目录中,然后进行一下命令:        alter table 表 import tablespace;


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux下MySQL的备份和恢复

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux下MySQL备份恢复流程

MySQL备份恢复是保护数据库数据安全的重要操作,以下是在Linux环境下MySQL备份恢复的流程:备份MySQL数据库:使用mysqldump命令进行备份,例如:mysqldump -u username -p database_name
Linux下MySQL备份恢复流程
2024-08-16

Linux备份和恢复的方法

这篇文章主要介绍“Linux备份和恢复的方法”,在日常操作中,相信很多人在Linux备份和恢复的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux备份和恢复的方法”的疑惑有所帮助!接下来,请跟着小编
2023-06-13

轻松实现Linux中mysql的备份和恢复

  为了提高Linux系统中MySQL数据库管理系统的安全性和稳定性,我们就需要对mysql进行备份的工作。做好备份的工作能使我们在遇到数据库问题时能够及时从备份数据中恢复数据库,从而避免造成更大的损失。那么如何在Linux中进行mysql的备份和恢复的操作呢?为此在本文中编程学习网笔者就为大家详细介绍具体的方法和步骤,让
轻松实现Linux中mysql的备份和恢复
2024-04-18

MySQL在Linux的备份恢复验证

MySQL在Linux的备份恢复验证可以通过以下步骤进行:备份数据库:使用命令行工具mysqldump来备份数据库,例如备份数据库名为mydb,可以使用以下命令:mysqldump -u root -p mydb > mydb_backup
MySQL在Linux的备份恢复验证
2024-08-16

Linux下备份恢复功能的应用

本篇内容主要讲解“Linux下备份恢复功能的应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux下备份恢复功能的应用”吧!本文讲述Linux环境下,如何使用备份的脚本和命令以及商业化的软
2023-06-13

Linux下Oracle如何备份与恢复

备份数据库:使用expdp工具进行数据库导出备份:expdp username/password@database_name dumpfile=backup.dmp logfile=backup.log使用RMAN进行数据库备份:rman
Linux下Oracle如何备份与恢复
2024-05-06

Linux下Ruby应用备份与恢复

在 Linux 下,对 Ruby 应用进行备份和恢复可以分为以下几个步骤:备份应用代码将应用的源代码打包压缩,以便在需要时进行恢复。可以使用 tar 命令来完成此操作:cd /path/to/your/ruby/apptar czvf
Linux下Ruby应用备份与恢复
2024-09-16

MySQL数据库备份和恢复

目录 MySQL数据库备份和恢复 备份恢复概述 为什么要备份 备份注意要点 还原要点 备份类型: 备份时需要考虑的因素 备份
MySQL数据库备份和恢复
2015-03-06

XtraBackup MySql 数据备份和恢复

1.wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.12/binary/redhat/6/x86_64/percona-xtrabackup-24-2.4.12-
XtraBackup MySql 数据备份和恢复
2017-01-22

编程热搜

目录