介绍
温备:同样是在数据库运行的时候进行备份的,但对当前数据库的操作会产生影响。(只可以读操作,不可以写操作)
温备份的优点:
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
将恢复原有全部数据