数据库的备份恢复是DBA的必修课,本文首先讲解mysqldump完整备份恢复的操作方法,演示数据库完整备份的基本过程。然后再模拟数据库遭遇灾难性破坏,配合bin-log日志实验数据库灾难性恢复的步骤。

一、mysqldump备份数据

mysqldump常用选项解析:

-u --user 用户名
-p --password 密码
-h --host=name 指定从远程主机备份(若不指定就是本机)
-l --lock-tables 指定读锁定(完成之后自动解锁)
-F --flush-logs 指定立刻刷新系统log日志,产生新的bin-log日志
-A --all-databases 所有数据库
-B --databases 指定若干个数据库:数据库名1 数据库名2
--log-error=name 指定此次备份的出错日志文件路径

A.将本地服务器上的所有数据库都备份
# /usr/local/mysql/bin/mysqldump -uroot -p123456 -lF --log-error=/root/myDump.err -A > /root/dball.sql
@ 主机:localhost
@ 数据库:所有数据库
@ 数据表:所有表
@ 错误日志:/root/myDump.err
@ 备份文件:/root/dball.sql

B.将本地服务器上的部分数据库备份
# /usr/local/mysql/bin/mysqldump -uroot -p123456 -lF --log-error=/root/myDump.err -B test zyyshop > /root/test_zyyshop.sql
@ 主机:localhost
@ 数据库:test 和 zyyshop 两个数据库
@ 数据表:所有表
@ 错误日志:/root/myDump.err
@ 备份文件:/root/test_zyyshop.sql

C.将本地服务器上的zyyshop数据库备份
# /usr/local/mysql/bin/mysqldump -uroot -p123456 -lF --log-error=/root/myDump.err -B zyyshop > /root/zyyshop.sql
@ 主机:localhost
@ 数据库:zyyshop数据库
@ 数据表:所有表
@ 错误日志:/root/myDump.err
@ 备份文件:/root/zyyshop.sql

注:当只备份一个数据库时加-B选项会在备份语句开头加有“CREATE DATABASE zyyshop”建库语句(推荐!),否则没有这条建库语句;

D.将本地服务器上的zyyshop数据库中的stu表、users表备份
# /usr/local/mysql/bin/mysqldump -uroot -p123456 -lF --log-error=/root/myDump.err zyyshop stu users > /root/zyyshop.stu_users.sql
@ 主机:localhost
@ 数据库:zyyshop数据库
@ 数据表:stu表、users表
@ 错误日志:/root/myDump.err
@ 备份文件:/root/zyyshop.stu_users.sql

注:当只备份某个库里的某些表时,格式:{库名} {表1} {表2}...
库名前是不能加-B选项的,否则系统会认为你要备份的是“zyyshop stu users”这三个数据库。

E.将远程主机(192.168.137.27)上的zyyshop数据库备份(异地备份)
# /usr/local/mysql/bin/mysqldump -uLisi -p123456 -h192.168.137.27 -lF --log-error=/root/myDump.err -B zyyshop > /root/host27.zyyshop.sql
@ 主机:192.168.137.27
@ 数据库:zyyshop数据库
@ 数据表:所有表
@ 错误日志:/root/myDump.err
@ 备份文件:/root/host27.zyyshop.sql

二、mysql命令导入恢复数据
常用选项:
-u --user 用户名
-p --password 密码
-h --host 指定向远程主机恢复(不指定就是从本机)
-v --verbose 将执行过程输出到屏幕显示
-f --force 如遇到错误sql语句就忽略,继续向下执行(如不加则可能会终止在某条错误的sql语句处)

A.假设zyyshop.sql这个备份文件是含“CREATE DATABASE zyyshop”建库语句的,则直接导入即可:
# /usr/local/mysql/bin/mysql -uroot -p123456 -v < /root/zyyshop.sql

B.假设zyyshop.sql这个备份文件不含“CREATE DATABASE zyyshop”建库语句的,则本地需要先建库再导入:

必须先登录主机并建库:
mysql> create database zyyshop;

然后再导入到指定库中:
# /usr/local/mysql/bin/mysql -uroot -p123456 -v zyyshop < /root/zyyshop22.sql

C.向远程主机(192.168.137.27)恢复数据,假设zyyshop.sql这个备份文件是含“CREATE DATABASE zyyshop”建库语句的:
# /usr/local/mysql/bin/mysql -uroot -p123456 -h192.168.137.27 -v < /root/zyyshop.sql

mysqldump备份恢复的更多相关文章

  1. mysql之 mysqldump 备份恢复详解

    mysqldump是MySQL用于转存储数据库的客户端程序.转储包含创建表和/或装载表的SQL语句 ,用来实现轻量级的快速迁移或恢复数据库,是mysql数据库实现逻辑备份的一种方式. mysqldum ...

  2. mysqldump备份恢复数据

    //导出数据(多个表以空格间隔)mysqldump -h 127.0.0.1 -uroot -p123456 --default-character-set=utf8 pandora report & ...

  3. MySQL基于mysqldump及lvmsnapshot备份恢复

    一.备份对象 数据 配置文件 代码:存储过程,存储函数,触发器 跟复制相关的配置 二进制日志文件 二.备份工具 mysqldump:逻辑备份工具 InnoDB热备.MyISAM温备.Aria温备 备份 ...

  4. MySQL备份恢复-mysqldump原理

    +++++++++++++++++++++++++++++++++++++++++++标题:mysqldump对MySQL数据库备份恢复原理时间:2019年2月23日内容:mysqldump工具重点: ...

  5. 使用mysqldump命令备份恢复MySQL数据库

    1.各种用法说明 A. 最简单的用法: mysqldump -uroot -pPassword [database name] > [dump file] 上述命令将指定数据库备份到某dump文 ...

  6. select … into outfile 备份恢复(load data)以及mysqldump时间对比

    select … into outfile 'path' 备份 此种方式恢复速度非常快,比insert的插入速度要快的多,他跟有备份功能丰富的mysqldump不同的是,他只能备份表中的数据,并不能包 ...

  7. MySQL备份和恢复[3]-mysqldump备份工具

    mysqldump 概述 逻辑备份工具: mysqldump, mydumper, phpMyAdmin Schema和数据存储在一起.巨大的SQL语句.单个巨大的备份文件 mysqldump:是My ...

  8. MySQL 系列(四)主从复制、备份恢复方案生产环境实战

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  9. Mysql备份系列(2)--mysqldump备份(全量+增量)方案操作记录

    在日常运维工作中,对mysql数据库的备份是万分重要的,以防在数据库表丢失或损坏情况出现,可以及时恢复数据. 线上数据库备份场景:每周日执行一次全量备份,然后每天下午1点执行MySQLdump增量备份 ...

随机推荐

  1. C# TTS-文本转语音

    System.Speech 命名空间包含支持语音识别的类型,你可以从Visual Studio很方便的添加相关组件的引用. System.Speech相关介绍:https://msdn.microso ...

  2. Django-建立网页

    进入cmd模式做 django-admin startproject helloworld创建一个project,并命名helloworld,新生成的文件结构如下   输入python manage. ...

  3. 转 gerrit

    开发环境 https://blog.csdn.net/u013207966/article/details/79112740 先记录下我的开发环境以及要正确安装gerrit需要用到的工具: Redha ...

  4. Power Designer逆向工程导入Oracle表,转为模型加注释

    1.打开PowerDesigner ——文件——Reverse Engineer——DataBase 2.选择所要连接数据库版本,此处使用的是oracle version 11g. 3.点击红色区域, ...

  5. K-means算法实现

    目录 K-means K-means x = xlsread("D:\MatlabData\西瓜数据集.xlsx"); m = length(x); [Idx,C]=kmeans( ...

  6. SQL行列乾坤大挪移

    “生活总是这样,有时候,你需要一个苹果,但别人却给了你一个梨.” 今天dalao邮件里需要添加一张每月累计长长的图,可是,拿到手上的SQL导出数据不符合我最爱的pyecharts的数据输入格式,头大. ...

  7. OpenLDAP编译安装及配置

    原文发表于cu:2016-06-20 参考文档: 原理:http://seanlook.com/2015/01/15/openldap_introduction/ 官方文档: http://www.o ...

  8. 论文笔记:Visual Object Tracking based on Adaptive Siamese and Motion Estimation Network

    Visual Object Tracking based on Adaptive Siamese and Motion Estimation 本文提出一种利用上一帧目标位置坐标,在本帧中找出目标可能出 ...

  9. 工作在Amazon:为何晋升如此难?

    英文原文:Why It's So Difficult to Climb Amazon's Corporate Ladder 本文作者 Brad Stone 的新书 The Everything Sto ...

  10. python基础知识-8-三元和一行代码(推导式)

    python其他知识目录 1.三元运算(三目运算) 三元运算符就是在赋值变量的时候,可以直接加判断,然后赋值格式:[on_true] if [expression] else [on_false]re ...