mysql数据备份

  1. #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境。但不能恢复到异构系统中如Windows。
  2. #2. 逻辑备份: 备份的是建表、建库、插入等操作所执行SQL语句,适用于中小型数据库,效率相对较低。
  3. #3. 导出表: 将表导入到文本文件中。

一、使用mysqldump实现逻辑备份

  1. #语法:
  2. # mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql
  3.  
  4. #示例:
  5. #单库备份
  6. mysqldump -uroot -p123 db1 > db1.sql
  7. mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql
  8.  
  9. #多库备份
  10. mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql
  11.  
  12. #备份所有库
  13. mysqldump -uroot -p123 --all-databases > all.sql

二、恢复逻辑备份

  1. #方法一:
  2. [root@localhost backup]# mysql -uroot -p123 < /backup/all.sql
  3.  
  4. #方法二:
  5. mysql> use db1;
  6. mysql> SET SQL_LOG_BIN=0;
  7. mysql> source /root/db1.sql
  8.  
  9. #注:如果备份/恢复单个库时,可以修改sql文件
  10. DROP database if exists school;
  11. create database school;
  12. use school;

三、备份/恢复案例

  1. #数据库备份/恢复实验一:数据库损坏
  2. 备份:
  3. 1. # mysqldump -uroot -p123 --all-databases > /backup/`date +%F`_all.sql
  4. 2. # mysql -uroot -p123 -e 'flush logs' //截断并产生新的binlog
  5. 3. 插入数据 //模拟服务器正常运行
  6. 4. mysql> set sql_log_bin=0; //模拟服务器损坏
  7. mysql> drop database db;
  8.  
  9. 恢复:
  10. 1. # mysqlbinlog 最后一个binlog > /backup/last_bin.log
  11. 2. mysql> set sql_log_bin=0;
  12. mysql> source /backup/2014-02-13_all.sql //恢复最近一次完全备份
  13. mysql> source /backup/last_bin.log //恢复最后个binlog文件
  14.  
  15. #数据库备份/恢复实验二:如果有误删除
  16. 备份:
  17. 1. mysqldump -uroot -p123 --all-databases > /backup/`date +%F`_all.sql
  18. 2. mysql -uroot -p123 -e 'flush logs' //截断并产生新的binlog
  19. 3. 插入数据 //模拟服务器正常运行
  20. 4. drop table db1.t1 //模拟误删除
  21. 5. 插入数据 //模拟服务器正常运行
  22.  
  23. 恢复:
  24. 1. # mysqlbinlog 最后一个binlog --stop-position=260 > /tmp/1.sql
  25. # mysqlbinlog 最后一个binlog --start-position=900 > /tmp/2.sql
  26. 2. mysql> set sql_log_bin=0;
  27. mysql> source /backup/2014-02-13_all.sql //恢复最近一次完全备份
  28. mysql> source /tmp/1.log //恢复最后个binlog文件
  29. mysql> source /tmp/2.log //恢复最后个binlog文件
  30.  
  31. 注意事项:
  32. 1. 完全恢复到一个干净的环境(例如新的数据库或删除原有的数据库)
  33. 2. 恢复期间所有SQL语句不应该记录到binlog

mysql之数据备份与还原的更多相关文章

  1. 转 MySQL 数据备份与还原

    MySQL 数据备份与还原 原贴:http://www.cnblogs.com/kissdodog/p/4174421.html   一.数据备份 1.使用mysqldump命令备份 mysqldum ...

  2. MYSQL数据备份与还原学习笔记

    数据备份与还原   1.mysqldump 1.1 文件地址: E:\xampp\mysql\bin 文件名:mysqldump.exe CMD下进入mysqldump.exe cd E:\xampp ...

  3. MySql笔记之数据备份与还原

    MySQL数据备份.还原与迁移 一.数据备份------mysqldump 1.语法: mysqldump -u user(用户名)-h host(登录用户的主机名称)-p password(登录密码 ...

  4. MySQL 数据备份与还原的示例代码

    MySQL 数据备份与还原的示例代码 这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 一.数据备份 1.使用 ...

  5. MySQL 数据备份与还原 转载

    MySQL 数据备份与还原 一.数据备份 1.使用mysqldump命令备份 mysqldump命令将数据库中的数据备份成一个文本文件.表的结构和表中的数据将存储在生成的文本文件中. mysqldum ...

  6. day 50 MySQL数据备份与还原(mysqldump)

      MySQL数据备份与还原(mysqldump)   一 mysqldump指令实现数据备份.mysql指令实现数据还原 经常有朋友问我,DBA到底是做什么的,百科上说:数据库管理员(Databas ...

  7. MySQL(四)数据备份与还原

    数据备份与还原: 备份:将当前已有的数据或者记录保留 还原:将已经保留的数据恢复到对应的表中 为什么要做备份还原: 1.防止数据丢失:被盗.误操作 2.保护数据的记录 数据备份还原的方式很多:数据表备 ...

  8. 如何用SQL语句实现Mysql数据库的备份与还原

    以前一直做android客户端的项目,根本没有开发asp.net mvc的开发,现阶段做了一个模块,参数设置,以及数据库的备份与还原.其需求如下: 参数设置 本项参数设置为对自动数据备份进行设置,管理 ...

  9. mysql数据库的备份和还原的总结

    mysql数据库的备份和还原的总结 (来自一运维同事的总结) 1. 备份方式: 热备:数据库在线进行备份,不影响读和写的在线备份方式! 温备:数据库在线进行备份,对表备份时先锁定写操作,仅可以执行读操 ...

随机推荐

  1. 网易易盾最新一代Java2c加固究竟有什么厉害之处?

    导语:几个月前,网易易盾正式推出Java2c加固.它以独有的"静态保护"技术,使得应用程序中的代码出现"下沉",达到不可逆的效果,兼顾"冷热启动时间& ...

  2. 调用redis的时候二维码不断刷新的排查

    一.背景和现象. 项目是PHP开发的,点击登录的时候就根据随机数生成了二维码,缓存在了redis.用户用微信扫描了二维码分析出需要请求的链接,然后微信浏览器就请求了服务器,服务器通过了随机数认证.正当 ...

  3. 响应式网站设计(Responsive Web design)

    页面的设计与开发应当根据用户行为以及设备环境(系统平台.屏幕尺寸.屏幕定向等)进行相应的响应和调整.具体的实践方式由多方面组成,包括弹性网格和布局.图片.CSS media query的使用等.无论用 ...

  4. 第七节:详细讲解Java中的日期,java.util.date

    前言 大家好,给大家带来详细讲解Java中的日期,java.util.date的概述,希望你们喜欢 类Date Java.lang.Object->java.util.Date public c ...

  5. Linux - 修改内核启动顺序及删除无用内核

    现象: CentOS7开机启动界面显示多个内核选项 原因: 正常情况下,有两个启动项,一个是"正常启动",另一个是"救援模式启动"(rescue). 如果启动项 ...

  6. Tools - Atom编辑器

    Atom官网 Atom编辑器的常用插件 预览 document-outline:Show a heirarchical outline of a text document minimap:A pre ...

  7. Java工程师学习指南 初级篇

    Java工程师学习指南 初级篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...

  8. AWS DevOps – 配合Jenkins和CodeDeploy实现代码自动化部署

    AWS DevOps – 配合Jenkins和CodeDeploy实现代码自动化部署 Amazon ElastiCache 连接至 Redis 节点 通过 AWS Command Line Inter ...

  9. Python机器学习笔记:sklearn库的学习

    网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...

  10. 基于 CGLIB 库的动态代理机制

    之前的文章我们详细的介绍了 JDK 自身的 API 所提供的一种动态代理的实现,它的实现相对而言是简单的,但是却有一个非常致命性的缺陷,就是只能为接口中的方法完成代理,而委托类自己的方法或者父类中的方 ...