数据备份(mysqldump,在Linux终端中操作)
1、命令格式
mysqldump -uroot -p 源库名 > 路径/xxx.sql
2、示例
1、备份db2库
mysqldump -uroot -p db2 > /home/tarena/db2.sql
3、源库名的表示方式
--all-databases 备份所有库
库名 备份单个库
-B 库1 库2 ... 备份多个库
库名 表1 表2 ...备份指定库的指定表
4、练习
1、备份所有库 all_mysql.sql,放到用户主目录下的 mydata 目录中
mysqldump -uroot -p --all-databases > ~/mydata/all_mysql.sql
2、备份 db2 库中的sheng、city、xian三张表 db2scx.sql
mysqldump -uroot -p db2 sheng city xian > ~/mydata/db2scx.sql
3、备份 MOSHOU 和 db2 库,MSdb2.sql
mysqldump -uroot -p -B MOSHOU db2 > ~/mydata/MSdb2.sql
数据恢复
1、命令格式
mysql -u用户名 -p 目标库名 < 路径/xxx.sql
2、示例
1、先备份库
mysqldump -uroot -p db2 > db2.sql
2、删除库
drop database db2;
3、先创建空库
create database db2 default charset=utf8;
4、恢复命令
mysql -uroot -p db2 < db2.sql
3、备份分为 完全备份 和 增量备份
完全备份:mysqldump
增量备份:binlog日志、xbackup工具
4、从所有库的备份文件中恢复某一个库(--one-database)
mysql -u用户名 -p --one-database 目标库名 < all_mysql.sql
示例:
mysql -uroot -p --one-database db2 < all_mysql.sql
注意:
1、恢复库时库中新增的表不会删除
2、恢复时必须先创建空库