mysqldump语法
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
默认不带参数的导出,导出流程为:创建数据库判断语句-删除表-创建表-锁表-禁用索引-插入数据-启用索引-解锁表
。
1、备份命令
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql
例如:
mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database mydb > /data/backup/mydb.sql
2、备份压缩
导出的数据有可能比较大,不好备份到远程,这时候就需要进行压缩
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 | gzip > 文件名.sql.gz
例如:
mysqldump -h192.168.1.100 -p 3306 -uroot -ppassword --database mydb | gzip > /data/backup/mydb.sql.gz
3、备份同个库多个表
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 表1 表2 .... > 文件名.sql
例如:
mysqldump -h192.168.1.100 -p3306 -uroot -ppassword mydb table1 table2 > /data/backup/mydb_table1_table2.sql
4、同时备份多个库
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --databases 数据库名1 数据库名2 数据库名3 > 文件名.sql
例如:
mysqldump -h192.168.1.100 -uroot -ppassword --databases mydb bbsdb blogdb > /data/backup/mutil_dbs.sql
5、备份实例上所有的数据库
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --all-databases > 文件名.sql
例如:
mysqldump -h192.168.1.100 -p3306 -uroot -ppassword --all-databases > /data/backup/all_dbs.sql
6、备份数据出带删除数据库或者表的sql备份
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --add-drop-table --add-drop-database 数据库名 > 文件名.sql
例如:
mysqldump -uroot -ppassword --add-drop-table --add-drop-database mydb > /data/backup/all_dbs.sql
7、备份数据库结构,不备份数据
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --no-data 数据库名1 数据库名2 数据库名3 > 文件名.sql
例如:
mysqldump --no-data –databases db1 db2 mydb > /data/backup/dbs_structure.sql