MySQL:温备份和恢复-mysqldump (4)

介绍

温备:同样是在数据库运行的时候进行备份的,但对当前数据库的操作会产生影响。(只可以读操作,不可以写操作)
温备份的优点:

1.可在表空间或数据文件级备份,备份时间短。

2.备份时数据库依然可以使用。

3.可达到秒级恢复,能够恢复到某一个时间点上。

4.恢复的速度很快,在大多数情况下在数据库工作时就可恢复。

5.几乎所有的数据库实体都可以进行恢复。

温备份的缺点:

1.尽量不要出错,否则后果会很严重。

2.如果热备份不成功,所得结果不可用于时间点的数据恢复。

3.维护的工作比较困难。
物理备份:

直接复制数据文件进行的备份

优点:不需要其他的工具,直接复制就好,恢复直接复制备份文件即可

缺点:与存储引擎有关,跨平台能力较弱

逻辑备份:

从数据库中导出数据另存而进行的备份

优点:能使用编辑器处理,恢复简单,能基于网络恢复,有助于避免数据损坏

缺点:备份文件较大,备份较慢,无法保证浮点数的精度,使用逻辑备份数据恢复后,还需要手动重建索引,十分消耗cpu资源。


正题

备份操作

格式1:备份指定库中的部分表

mysqldump [选项] 库名 [表名1] [表名2] ... > /备份路径/备份文件名

格式2:备份一个或多个完整的库

mysqldump [选项] --databases 库名1 [库名2] ... > /备份路径/备份文件名

格式3:备份所有的库

mysqldump [选项] --all-databases > /备份路径/备份文件名
常用的选项包括-u、-p

-u、指定数据库用户名

-p 指定用户密码

--opt 当导出数据量较大的时候,可以优化执行速度

备份

复制代码
mysqldump -uroot -p mysql user > /backup/mysql-user.sql

这个意思是把mysql库中的user表备份到/back-user.sql中

复制代码
mysqldump -uroot -p --databases test > /backup/test.sql

把test库备份到/backup/test.sql

复制代码
mysqldump -uroot -p --opt --all-databases  > /backup/mysql-all.sql

把整个数据库备份到/backup/mysql-all.sql


恢复

复制代码
mysql -uroot -p test < mysql-user.sql 

把之前备份的mysql下user表恢复到test中了

复制代码
 mysql -uroot -p < test.sql 

将原有的test数据库恢复到里面,前提是里面没有和他一样名字的数据库

复制代码
mysql -uroot -p < mysql-all.sql

将恢复原有全部数据

相关推荐
ss2736 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
l1t6 小时前
DeepSeek总结的数据库外部表
数据库
m0_674294646 小时前
如何编写SQL存储过程性能对比_记录执行时间评估优化效果
jvm·数据库·python
014-code7 小时前
CompletableFuture 实战模板(超时、组合、异常链处理)
java·数据库
运气好好的7 小时前
怎样开启phpMyAdmin的操作审计日志_记录每条执行的SQL
jvm·数据库·python
それども8 小时前
DELETE 和 TRUNCATE TABLE区别
java·数据库·mysql
wenha8 小时前
数据库隔离级别
数据库·mysql·sqlserver·隔离级别
2401_871492858 小时前
Layui如何修改Layui默认的UI主题颜色(换肤功能实现)
jvm·数据库·python
Edward111111118 小时前
4.27mysql ,数据库,数据源
数据库·mysql
小徐敲java8 小时前
踩坑实录:MySQL8.0 导入SQL报错 2006 - MySQL server has gone away 完美解决
数据库·sql