mysqldump备份

半城伤御伤魂 提交于 2020-03-05 22:52:58

1、备份命令

 

格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql

 

例如: mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database cmdb > dump.sql

 

 

2、备份压缩

 

导出的数据有可能比较大,不好备份到远程,这时候就需要进行压缩

 

格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 | gzip > 文件名.sql.gz

 

例如: mysqldump -h192.168.1.100 -p 3306 -uroot -ppassword --database cmdb | gzip > dump.sql.gz

 

3、备份同个库多个表

 

格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 表1 表2 .... > 文件名.sql

 

例如 mysqldump -h192.168.1.100 -p3306 -uroot -ppassword cmdb t1 t2 > dump.sql

 

 

4、同时备份多个库

 

格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --databases 数据库名1 数据库名2 数据库名3 > 文件名.sql

 

例如:mysqldump -h192.168.1.100 -uroot -ppassword --databases cmdb bbs blog > dump.sql

 

 

5、备份实例上所有的数据库

 

 

格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --all-databases > 文件名.sql

 

例如:mysqldump -h192.168.1.100 -p3306 -uroot -ppassword --all-databases > dump_all.sql

 

7、备份数据库结构,不备份数据

 

格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --no-data 数据库名1 数据库名2 数据库名3 > 文件名.sql

 

例如:mysqldump --no-data –databases db1 db2 cmdb >dump.sql

恢复
shell> mysql -uroot -p123456   db1  < dump.sql

或者,在mysql中,使用 source命令:

mysql> source dump.sql

如果文件是不包含CREATE DATABASEUSE语句的单数据库转储 ,请首先创建数据库(如有必要):

shell> mysqladmin create db1

然后在加载转储文件时指定数据库名称:

shell> mysql db1 < dump.sql

或者,在mysql中创建数据库,将其选为默认数据库,然后加载转储文件:

mysql> CREATE DATABASE IF NOT EXISTS db1;
mysql> USE db1;
mysql>source dump.sql

Example

shell> mysql --defaults-file=~/.mysql_user < /backup/2016-12-08-04-mysql-all.sql

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!