mysql备份恢复相关(mysqldump)
mysqldump常见选项:
--all-databases,-A: 备份所有数据库
--databases,-B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldum把每个名字都当作为数据库名。
--force,-f:即使发现sql错误,仍然继续备份
--host=host_name,-h host_name:备份主机名,默认为localhost
--no-data,-d:只导出表结构
--password[=password],-p[password]:密码
--port=port_num,-P port_num:制定TCP/IP连接时的端口号
--quick,-q:快速导出
--tables:覆盖 --databases or -B选项,后面所跟参数被视作表名
--user=user_name,-u user_name:用户名
--xml,-X:导出为xml文件
1.备份全部数据库的数据和结构
mysqldump -uroot -p123456 -A >F:\all.sql
2.备份全部数据库的结构(加 -d 参数)
mysqldump -uroot -p123456 -A-d>F:\all_struct.sql
3.备份全部数据库的数据(加 -t 参数)
mysqldump -uroot -p123456 -A-t>F:\all_data.sql
4.备份单个数据库的数据和结构(,数据库名mydb)
mysqldump -uroot-p123456 mydb>F:\mydb.sql
5.备份单个数据库的结构
mysqldump -uroot -p123456 mydb-d>F:\mydb.sql
6.备份单个数据库的数据
mysqldump -uroot -p123456 mydb-t>F:\mydb.sql
7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)
mysqldump -uroot -p123456 mydb t1 t2>f:\multables.sql
8.一次备份多个数据库
mysqldump -uroot -p123456 --databases db1 db2>f:\muldbs.sql
mysqldump -uroot -p123456 -B db1 db2 > db1_db2.sql (恢复的时候会自动创建数据库,并USE此数据库)
还原部分分(1)mysql命令行source方法 和 (2)系统命令行方法
1.还原全部数据库:
(1) mysql命令行:mysql>source f:\all.sql
(2) 系统命令行: mysql -uroot -p123456
2.还原单个数据库(需指定数据库)
(1) mysql>use mydb
mysql>source f:\mydb.sql
(2) mysql -uroot -p123456 mydb
3.还原单个数据库的多个表(需指定数据库)
mysql>source f:\multables.sql
(2) mysql -uroot -p123456 mydb
4.还原多个数据库,(一个备份文件里有多个数据库的备份,此时不需要指定数据库)
(1) mysql命令行:mysql>source f:\muldbs.sql
(2) 系统命令行: mysql -uroot -p123456 < some_db.sql
mysqldump导出数据时排除某些表
使用mysqldump导出数据时,可以用下面的命令排除不需要的表
mysqldump -uxxx -pxxx database --ignore-table=database.table1 --ignore-table=database.table2 > backup.sql