mysql运维管理-mysqldump 备份与恢复数据库20

Posted 云无止境-king

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql运维管理-mysqldump 备份与恢复数据库20相关的知识,希望对你有一定的参考价值。

mysqldump 备份与恢复数据库

备份:

1、备份全部数据库的数据和结构

mysqldump -uroot -pjsb -A > /bk/all.sql

-A: 备份所有数据库=--all-databases 

2、

备份全部数据库的结构(加 -d 参数)

mysqldump -uroot -p123456 -A -d > F:\all_struct.sql 

-A: 备份所有数据库=--all-databases    --no-data, -d:只导出表结构

4.备份单个数据库的数据和结构(,数据库名mydb)

mysqldump -uroot-p123456 mydb>F:\mydb.sql

5.备份单个数据库的表结构(不备份实际数据)很快

mysqldump -uroot -p123456 mydb -d > F:\mydb.sql

--no-data, -d:只导出表结构

7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)(一次备份多个表)

mysqldump -uroot -p123456 mydb t1 t2  >  f:\multables.sql

8.一次备份多个数据库

mysqldump -uroot -p123456 --databases db1 db2  > f:\muldbs.sql 

mysqldump -uroot -pjsb-B bk0 bk1 > bk01.sql (和上面相等结果)

--databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,

1.导出结构不导出数据

mysqldump -d 数据库名 -uroot -p > xxx.sql

2.导出数据不导出结构

mysqldump -t 数据库名 -uroot -p > xxx.sql

3.导出数据和表结构

mysqldump 数据库名 -uroot -p > xxx.sql

4.导出特定表的结构

mysqldump -uroot -p -B数据库名 --table 表名 > xxx.sql

还原-恢复:

还原全部数据库2方法:(需要数据库的备份集)

(1)mysql命令行source方法 

(1) mysql命令行:source  备份集路径/备份集名字.sql

(2)系统命令行方法

(2) 系统命令行: mysql -u账号 -p密码 < 备份集路径/备份集名字.sql

1.还原单个数据库(需指定数据库的备份集)

mysql命令行source方法:如下

mysql -uroot -pjsb 

cd 进入 你存放恢复脚本(或者备份集目录)下

use mydb

source f:\备份集名字.sql

系统命令行方法:如下(推荐)

mysql -uroot -p123456 mydb < f:\mydb.sql

2.还原单个数据库的多个表(需要单个数据库的多个表的备份集)

mysql命令行source方法:如下

use mydb

cd 进入 你存放恢复脚本(或者备份集目录)下

source 备份集路径/备份集名字.sql

系统命令行方法:如下(推荐)

mysql -uroot -p123456 mydb <  f:\multables.sql

4.还原多个数据库,(一个备份文件里有多个数据库的备份,此时不需要指定数据库)

mysql命令行:

source f:\muldbs.sql

系统命令行:(推荐)

mysql -uroot -p123456 < 备份集路径下/备份集名字.sql

mysql -uroot -pjsb < bk01.sql

姊妹篇:

http://blog.csdn.net/u010098331/article/details/50896175

常见选项:
--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文件

摘抄:

导入数据:

由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:

MySQL存储过程迁往另一Linux操作系统下的MySQL数据库,因为表结构等已经在目标数据库中存在了, 不想直接拷贝数据库过去,所以用到了 MySQL的存储过程导出和导入,经上网搜索发现用Mysqldump工具可以实现,具体用法为:

mysqldump -uroot -p -hlocalhost -P3306 -n -d -t -R DBName > procedure_name.sql











以上是关于mysql运维管理-mysqldump 备份与恢复数据库20的主要内容,如果未能解决你的问题,请参考以下文章

Mysql DBA 高级运维学习笔记-MySQL备份与恢复实战案例及生产方案

Mysql DBA 高级运维学习笔记-Mysql增量备份及数据恢复实战

mysqldump实现简单备份恢复

mysqldump全量备份与恢复

数据库管理与高可用第四章备份与恢复

MySQL数据备份与还原(mysqldump)