MySQL导入与导出备份详解
来源:脚本之家
时间:2022-12-30 19:27:33 270浏览 收藏
本篇文章给大家分享《MySQL导入与导出备份详解》,覆盖了数据库的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。
一、MySQL备份类型详解
对于现代互联网公司而言,存储在服务器数据库中的数据,逐步成为企业和公司的命脉,对企业和公司的生存发展具有十分重大的影响。为了保证数据库数据存储安全,确保不会因为误操作和不可抗力而破坏,通常我们都会对数据库中的数据进行备份。对MySQL数据库的备份,可以有很多种方式,我们接下来按照不同的分类标准,来讲解一下这些备份方式:
(一)按照备份对数据库的影响分类
1、热备份(Hot Backup)。 指在数据库运行过程中进行备份,并且对数据库正常运行没有任何影响。
2、冷备份(Cold Backup)。 指在数据库停止运行后开始进行的备份。
3、温备份(Warm Backup)。 指在数据库运行过程中进行备份,但是会造成数据库性能下降,对数据库提供服务造成影响的备份方式。
(二)按照备份的文件进行分类
1、逻辑备份。 采用逻辑备份的方式,备份出的数据通常是.sql类型的文件。备份后的内容可读且为文本文件。该方法一般用于数据库的升级、迁移或者对数据库表的批量修改等场景。该方法恢复时间较长。
2、裸文件备份。 指拷贝数据库的物理文件,采用这种方式,数据库恢复时间较短。
(三)按照备份的方式进行分类
1、完全备份。 指的是对数据库进行完整的备份。
2、增量备份。 指的是在上一次备份的基础上,对更新的数据进行备份,而不是备份所有数据。
3、日志备份。 指的是对数据库的日志进行备份,MySQL主从同步架构中就是采用这种备份方式。
二、MySQL数据库导出
(一)mysqldump导出数据
mysqldump是MySQL数据库自带的数据备份导出的工具,该工具支持MyISAM和InnoDB引擎的数据表。mysqldump备份使用参数如下:
-u:表示指定登录数据库使用的用户。
-p:表示指定登录数据库使用的用户密码。
-d:表示导出时只导出数据库的表结构。
-t:表示导出时只导出数据库的具体数据而不包括表结构。
-A:表示导出所有的数据库。
使用mysqldump示例如下:
mysqldump -uroot -proot -A >all_database.sql mysqldump -uroot -proot pzz > pzz.sql mysqldump -uroot -proot pzz student > student.sql mysqldump -uroot -proot -d pzz > pzz_table.sql mysqldump -uroot -proot -t pzz > pzz_data.sql
上述五条命令,分别表示导出数据库中的所有数据,导出pzz数据库中的数据,导出pzz数据库中student表中的所有数据,导出pzz数据库中表结构相关数据以及导出pzz数据库中除了表结构之外的实际数据。
使用mysqldump导出的文件,结果如下所示:
(二)mysqlhotcopy裸文件备份
在MySQL5.5及以下版本的数据库中(MySQl5.7版本的数据库中已经删去mysqlhotcopy命令),可以进行快速备份。mysqlhotcopy所进行的备份,本质上就是对数据库库表文件的直接物理复制,只不过在复制时使用了锁对数据库的内容进行了锁定。并且,mysqlhotcopy命令只能备份MyISAM引擎的数据表。mysqlhotcopy命令使用示例如下:
mysqlhotcopy -u root -p root pzz /root mysqlhotcopy -u root -p root pzz./student/root
上面两条命令,第一条是对pzz数据库进行备份,第二条是对pzz数据库中的student数据表进行备份。备份过程如下:
(三)mysqldump与mysqlhotcopy比较
1、mysqldump会备份成.sql文件,而mysqlhotcopy采用的是裸文件备份。
2、mysqldump备份和恢复比mysqlhotcopy速度慢,因此不适合大文件备份。
3、mysqldump支持MyISAM和InnoDB引擎,而mysqlhotcopy只支持MyISAM引擎。
4、mysqlhotcopy在MySQL5.5(不含)以上的版本中不自带。
5、mysqlhotcopy只能运行在数据库所在的设备上,而mysqldump可以运行在本地设备上,也可以运行在远程客户端。
6、mysqldump和mysqlhotcopy在运行时,都会对数据库进行上锁操作。
7、mysqldump备份的恢复本质上是对.sql文件中SQL语句的执行,而mysqlhotcopy备份的回复本质上是直接覆盖。
三、MySQL数据库导入
如果我们采用mysqlhotcopy对数据库进行备份,那么在恢复时只需要将备份的数据覆盖原有的数据即可。而如果对mysqldump导出的.sql文件进行恢复,则需要进行MySQL的数据导入。MySQL数据库的导入,有两种方式,一种是使用“ 例如,要导入exp.sql的备份数据,则可以执行命令:
mysql -uroot -proot或者是登录进入数据库后,执行:
source /root/exp.sql总结
以上就是《MySQL导入与导出备份详解》的详细内容,更多关于mysql的资料请关注golang学习网公众号!
-
140 收藏
-
485 收藏
-
252 收藏
-
152 收藏
-
169 收藏
-
489 收藏
-
209 收藏
-
497 收藏
-
335 收藏
-
467 收藏
-
303 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习
-
- 受伤的蓝天
- 太详细了,码起来,感谢作者大大的这篇技术文章,我会继续支持!
- 2023-01-26 08:53:34
-
- 激动的黑夜
- 太给力了,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,帮助很大,总算是懂了,感谢作者大大分享博文!
- 2023-01-11 05:01:20
-
- 称心的台灯
- 这篇博文真及时,太详细了,感谢大佬分享,mark,关注楼主了!希望楼主能多写数据库相关的文章。
- 2023-01-02 18:40:40
-
- 背后的花卷
- 这篇文章内容真及时,太详细了,受益颇多,码起来,关注作者大大了!希望作者大大能多写数据库相关的文章。
- 2023-01-01 01:10:14
-
- 欢喜的钢铁侠
- 很好,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,看完之后很有帮助,总算是懂了,感谢作者分享博文!
- 2022-12-31 20:01:53