文章详情

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

请输入下面的图形验证码

提交验证

短信预约提醒成功

MySQL完全备份与恢复的示例分析

2024-04-02 19:55

关注

这篇文章将为大家详细讲解有关MySQL完全备份与恢复的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

MySQL完全备份与恢复的示例分析

免费学习推荐:mysql视频教程

文章目录


前言


一、MySQL 完全备份

1.数据库备份方式精讲

1.1 数据库备份的重要性

生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果

数据库备份的重要性主要体现在:

  1. 提高系统的高可用性和灾难可恢复性,在数据库系统崩溃时,没有数据库备份就没法找到数据

  2. 使用数据库备份还原数据库,是数据库崩溃时提供数据恢复最小代价的最优方案,如果让用户重新添加数据,代价未免太大

  3. 没有数据就没有一切,数据库备份是一种防范灾难的强力手段

使用数据库的过程中,有多种原因造成数据的丢失:

  1. 程序错误:指对数据库操作的程序难免有些错误,造成数据丢失

  2. 人为错误:指由于使用人员的误操作造成的数据被破坏,还有可能是黑客对系统攻击造成的数据丢失等

  3. 计算机失败:指运行数据库的服务器操作系统或软件损坏,有可能造成数据的损坏

  4. 磁盘失败:指硬盘等存储数据的硬件设备,长时间运行后可能损坏,造成数
    据丢失

  5. 灾难(如火灾、地震)和偷窃:指自然灾害等的发生,有可能造成数据丢失

1.2 数据库备份的分类

备份方式分很多种,从物理与逻辑的角度,备份可分为以下几类:

1.2.1 物理备份
1.2.2 逻辑备份

从数据库的备份策略角度来看,备份又可分为完全备份、差异备份和增量备份

1.2.3 完全备份
1.2.4 差异备份
1.2.5 增量备份
1.2.6 备份方式比较
备份方式完全备份差异备份增量备份
完全备份时的状态表1、表2表1、表2表1、表2
第1次添加内容创建表3创建表3创建表3
备份内容表1、表2、表3表3表3
第2次添加内容创建表4创建表4创建表4
备份内容表1、表2、表3、表4表3、表4表4

1.3 MySQL 完全备份概念解读

2.mysqldump 备份演练

2.1 使用 tar 打包文件夹备份

yum -y install xz#数据库文件很大,可以使用压缩率较大的xz格式压缩,首选需要安装xz压缩格式工具tar Jcvf /opt/mysql-$(date +%F).tar.xz /usr/local/mysql/data/#对数据库文件夹进行打包操作ls /opt#查看打包命令是否运行成功,已经生成了备份文件du -sh /opt/mysql-2021-02-05.tar.xz #对比打包前后的文件大小,可以看到压缩的备份文件所占用空间很小tar -Jxvf /opt/mysql-2021-02-05.tar.xz -C /usr/local/mysql/data/systemctl restart mysql#如果数据库文件损坏数据丢失,可以解压缩文件,相当于数据恢复

MySQL完全备份与恢复的示例分析

2.2 使用 mysqldump 工具备份

#开始之前,创建库和表,用作例子mysql -uroot -p123123#输入密码进入数据库,以上为我的密码create database SCHOOL;#创建库use SCHOOL;create table CLASS01 ( id int(2) not null auto_increment, name varchar(10) not null, sex char(5) not null, hobby varchar(10), primary key (id));#创建表结构#字段一:id,最大显示长度2,不能为空,自动递增从1开始#字段二:name,可变长度字段,10,不能为空#字段三:sex,固定长度5,不能为空#字段四:hobby,可变长度,最多10字符#字段四:主键(id)insert into CLASS01 values(1,'wangyi','man','reading');insert into CLASS01 values(2,'wanger','woman','singing');#插入2条数据select * from CLASS01;#检查一下quit#退出数据库

MySQL完全备份与恢复的示例分析

#使用 mysqldump 对某些表进行完全备份,命令格式如下:mysqldump -u[用户名] -p[密码] [选项] [数据库名] [数据表名] > /备份路径/备份文件名.sql#导出的为数据库脚本文件例:对库SCHOOL中的表class进行备份至/opt/目录下mysqldump -uroot -p[密码] SCHOOL CLASS01 > /opt/test01.sql

MySQL完全备份与恢复的示例分析

#对某些库进行完全备份mysqldump -uroot -p[密码] [数据库名] > /目录/备份文件名.sql例:mysqldump -uroot -p123123 SCHOOL > /opt/test02#对多个库进行完全备份mysqldump -uroot -p123123 --databases SCHOOL sys > /opt/test03.sql#对所有库进行完全备份mysqldump -uroot -p123123 --all-databases > /opt/test04.sql#直接备份表结构mysqldump -uroot -p123123 -d SCHOOL CLASS01 > /opt/test05.sqlls /opt/#查看打包命令是否运行成功,已经生成了备份文件

MySQL完全备份与恢复的示例分析
MySQL完全备份与恢复的示例分析

cat /opt/test05.sql#分析 mysqldump 工具生成的备份文件的内容

MySQL完全备份与恢复的示例分析

cat /opt/test01

MySQL完全备份与恢复的示例分析


二、MySQL 完全恢复

1.恢复整库操作

1.1 source 命令整库恢复

mysql -uroot -p123123show databases;drop database SCHOOL;show databases;source /opt/test03.sql#之前备份过的,该备份为SCHOOL和sys两个库的完整备份#注意!选项得加“--databases”才是完整的备份,不然会恢复不了

MySQL完全备份与恢复的示例分析

1.2 MySQL 命令整库恢复

quitmysql -uroot -p123123 -e 'drop database SCHOOL;'mysql -uroot -p123123 -e 'SHOW DATABASES;'mysql -uroot -p123123 < /opt/test03.sql

 mysql -uroot -p123123 -e 'SHOW DATABASES;'

MySQL完全备份与恢复的示例分析

2.恢复表操作

2.1 使用 source 命令恢复表

mysql -uroot -p123123use SCHOOL;show tables;drop table CLASS01;
 source /opt/test01.sql#恢复表show tables;select * from CLASS01;#查看

MySQL完全备份与恢复的示例分析
MySQL完全备份与恢复的示例分析

2.2 使用 mysql 命令恢复表

quitmysql -uroot -p123123 -e 'SHOW TABLES FROM SCHOOL;'mysql -uroot -p123123 -e 'DROP TABLES SCHOOL.CLASS01;'mysql -uroot -p123123 -e 'SHOW TABLES FROM SCHOOL;'mysql -uroot -p123123 SCHOOL < /opt/test01.sqlmysql -uroot -p123123 -e 'SHOW TABLES FROM SCHOOL;'

MySQL完全备份与恢复的示例分析

3.MySQL 备份思路

关于“MySQL完全备份与恢复的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

阅读原文内容投诉

免责声明:

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

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

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯