MySQL的小知识点(十一)

125 阅读2分钟

「这是我参与2022首次更文挑战的第26天,活动详情查看:2022首次更文挑战image.png

MySQL的备份

web端的应用程序最关心的肯定是数据,数据的丢失或者是损坏对用户来说是不能够忍受的。那么,数据库对这方面要做好保障措施,MySQL对数据的备份提供了一些工具给我们使用。

mysqldump

mysqldump是MySQL为我们提供的数据导出程序。它是MySQL的逻辑备份,通过将MySQL里面存储的表结构和数据以SQL的形式导出到文件,然后我们就可以将这些文件拷贝到其它机器上的MySQL服务上执行恢复数据。mysqldump不仅仅支持将数据导出为SQL,还支持将数据导出为xml或csv形式的文件,具体看实际的需求选择。那么接下来我们看下怎么使用这个工具来备份我们的数据。mysqldump的语法如下:

mysqldump [options] > 导出文件的路径

使用很简单,就是mysqldump命令后面加一些选项,然后再用大于号将数据写入到我们指定的文件即可,options的选项可以。它还可以用如下的语法进行数据导出:

mysqldump [options] db_name [tbl_name ...] # 导出某个数据库的某些表
mysqldump [options] --databases db_name ... # 导出选定的数据库
mysqldump [options] --all-databases # 导出所有的数据库

options选项有很多,常用的有--host--port--user用于指定需要导出或导入的数据库的机器地址和用户,还有其它的如:

--flush-logs # 在开始导出之前将MySQL的日志刷到磁盘上
--help # 查看帮助信息
--ignore-error #  忽略导出出错
--lock-all-tables # 导出时锁定所有的表,不允许写入
...

mysqldump优缺点

优点:从上面可以看出,这个工具使用是非常方便的,直接导出就可以使用,学习门槛低,在数据量小的情况下是非常不错的选择。
缺点:导出的时间可能会比较长,以sql形式导出数据要在新的数据库上全部执行一遍,占用大量的计算和io资源。