MySQL 备份和恢复策略详细教程

   在数据库表丢失或损坏的情况下,备份你的数据库是很重要的。如果发生系统崩溃,你肯定想能够将你的表尽可能丢失最少的数据恢复到崩溃发生时的状态。本文主要对MyISAM表做备份恢复。

  备份策略一:直接拷贝数据库文件(不推荐)

  备份策略二:使用mysqlhotcopy备份数据库(完全备份,适合小型数据库备份)

  备份策略三:使用mysqldump备份数据库(完全+增量备份,适合中型数据库备份)

  备份策略四:使用主从复制机制(replication)(实现数据库实时备份)

  备份策略一、直接拷贝数据库文件

  直接拷贝数据文件最为直接、快速、方便,但缺点是基本上不能实现增量备份。为了保证数据的一致性,需要在备份文件前,执行以下 SQL 语句:

  FLUSH TABLES WITH READ LOCK;

  也就是把内存中的数据都刷新到磁盘中,同时锁定数据表,以保证拷贝过程中不会有新的数据写入。这种方法备份出来的数据恢复也很简单,直接拷贝回原来的数据库目录下即可。

  备份策略二、使用mysqlhotcopy备份数据库

  mysqlhotcopy 是一个 PERL 程序,最初由Tim Bunce编写。它使用 LOCK TABLES、FLUSH TABLES 和 cp 或 scp 来快速备份数据库。它是备份数据库或单个表的最快的途径,但它只能运行在数据库文件(包括数据表定义文件、数据文件、索引文件)所在的机器上,并且mysqlhotcopy 只能用于备份 MyISAM表。

  本备份策略适合于小型数据库的备份,数据量不大,可以采用mysqlhotcopy程序每天进行一次完全备份。

  备份策略布置:

  (1)、安装DBD-mysql perl模块,支持mysqlhotcopy脚本连接到MySQL数据库。

  shell> tar -xzvf DBD-mysql-4.005.tar.gz

  shell> cd DBD-mysql-4.005

  shell> unset LANG

  shell> perl Makefile.PL -mysql_config=/usr/local/mysql/bin/mysql_config -testuser=root -testpassword=UserPWD

  shell> make

  shell> make test

  shell> make install

  (2)、设置crontab任务,每天执行备份脚本

  shell> crontab -e

  0 3 * * * /root/MySQLBackup/mysqlbackup.sh >/dev/null 2>&1

  每天凌晨3:00执行备份脚本。

  mysqlbackup.sh注释:

  #!/bin/sh

  # Name:mysqlbackup.sh

  # PS:MySQL DataBase Backup,Use mysqlhotcopy script.

  # Write by:i.Stone

  # Last Modify:2007-11-15

  #

  # 定义变量,请根据具体情况修改

  # 定义脚本所在目录

  scriptsDir=`pwd`

  # 数据库的数据目录

  dataDir=/usr/local/mysql/data/

  # 数据备份目录

  tmpBackupDir=/tmp/tmpbackup/

  backupDir=/tmp/mysqlbackup/

  # 用来备份数据库的用户名和密码

  mysqlUser=root

  mysqlPWD=111111

  # 定义eMail地址

  eMail=alter@somode.com

  # 如果临时备份目录存在,清空它,如果不存在则创建它

  if [[ -e $tmpBackupDir ]]; then

  rm -rf $tmpBackupDir/*

  else

  mkdir $tmpBackupDir

  fi

  # 如果备份目录不存在则创建它

  if [[ ! -e $backupDir ]];then

  mkdir $backupDir

  fi

  # 清空MySQLBackup.log

  if [[ -s MySQLBackup.log ]]; then

时间: 2024-10-06 05:33:13

MySQL 备份和恢复策略详细教程的相关文章

MySQL 备份和恢复

MySQL 备份和恢复 本文讨论 MySQL 的备份和恢复机制,以及如何维护数据表,包括最主要的两种表类型:MyISAM 和 Innodb 目前 MySQL 支持的免费备份工具有:mysqldump.mysqlhotcopy,还可以用 SQL 语法进行备份:BACKUP TABLE 或者 SELECT INTO OUTFILE,又或者备份二进制日志(binlog),还可以是直接拷贝数据文件和相关的配置文件.MyISAM 表是保存成文件的形式,因此相对比较容易备份,上面提到的几种方法都可以使用.I

物联网应用彰显云备份和恢复策略的重要性

随着物联网和大数据系统的蓬勃发展,IT团队需要在云计算中存储和保护更多的数据.为了满足这些需求,并避免数据丢失,重新思考云备份和恢复. 长期以来,云计算备份和恢复一直是在云计算中运行生产工作负载的企业的首要任务.但是,如今随着物联网等技术趋势刺激大量数据用于组织存储和保护,IT团队必须改进其云计算备份和恢复策略,并使恢复成为主要关注点. 总部位于波士顿的云咨询厂商Cloud Technology Partners公司高级副总裁戴维·林茨科姆说,"云计算世界中的数据保护正在发生变化,因为物联网开始

基于纠删码的云计算存储备份及恢复策略

基于纠删码的云计算存储备份及恢复策略 芦欣 刘渊 如何保障云存储系统中数据的可靠性是云计算领域的热点问题.副本备份技术是保障数据可靠性的重要手段,但是存在占用存储空间大.存储效率低等问题.纠删码能够提供优化的数据冗余度,以防止数据丢失,恰当地使用纠删码可以提高空间的利用效率并获得较好的数据保护效果,在通讯方面已经得到广泛应用.本文将纠删码引入云存储系统中,代替副本备份策略,以提高云存储系统的性能.实验表明该方案可以有效提高数据可靠性和空间利用率. 基于纠删码的云计算存储备份及恢复策略

MySQL备份和恢复

讨论 MySQL 的备份和恢复机制,以及如何维护数据表,包括最主要的两种表类型:MyISAM 和 Innodb,文中设计的 MySQL 版本为 5.0.22. 本文介绍的是使用MySQL自带免费备份工具备份,当然你可以选择一些更方便的第三方工具进行备份和恢复MySql数据库. 目前 MySQL 支持的免费备份工具有:mysqldump.mysqlhotcopy,还可以用 SQL 语法进行备份:BACKUP TABLE 或者 Select INTO OUTFILE,又或者备份二进制日志(binlo

太极刷机大师备份和恢复iOS数据教程

  1.将手机连接电脑,打开太极刷机大师,选择[备份恢复]->[iTunes备份] 2.iTunes包含两种备份方式,可选择是否备份手机应用数据(备份应用数据所需时间较长,文件体积较大) 3.选好备份方式后,点击最下方的[开始备份],即可开始备份手机内数据 4.耐心等待,备份期间注意不要断开手机 5.等到提示[itunes备份完成],就表示已经备份成功了 6.备份后的数据,可以在[备份恢复]->[恢复备份]中查看到,选择好备份后,点击下一步即可为手机恢复备份的数据

MS SQL基础教程:备份和恢复系统数据库

系统数据库保存了有关SQL Server 的许多重要数据信息,这些数据的丢失将给系统带来极为严重的后果,所以我们也必须对系统数据库进行备份.这样一旦系统或数据库失败,则可以通过恢复来重建系统数据库.在SQL Server 中重要的系统数据库主要有master. msdb. distribution. model. 虽然tempdb 也是系统数据库但没有必要对其进行备份,因为SQL Server 每次启动都会重新创建该数据库,而当SQL Server 停止运行时,tempdb 数据库中所有数据都会

MySQL的备份和恢复

前奏: 建议在Linux中使用RPM包来安装MySQL.MySQL RPM目前已经嵌入到SuSE Linux 7.3系统中,但是应当能在大多数支持rpm和使用glibc的Linux版本中工作. MySQL AB不提供与具体平台相关的RPM:具体平台相关的RPM和通用RPM之间的区别是具体平台相关RPM为目标平台而构建,为动态连接.而通用RPM与Linux线程之间是静态连接. 注释:通常由其它供应商提供MySQL的RPM分发版.其特征和功能与MySQL AB所构建的不同,该手册中的指令不一定适合安

mysql删除数据库没有备份怎么恢复

问题描述 mysql删除数据库没有备份怎么恢复 ----数据库误删,没有备份.有办法恢复吗?------------------------------------------------------------- 解决方案 不能恢复的,一旦删除恢复不了,据我所知是单向的 解决方案二: MySQL参考手册第7章:数据库的备份与恢复MySQL备份和恢复数据库MySQL备份和恢复数据库 解决方案三: mysql 误操作通过日志数据恢复 你可以看下这篇博客. 解决方案四: mysql 误操作通过日志数

Oracle数据库的备份及恢复策略研究_oracle

正在看的ORACLE教程是:Oracle数据库的备份及恢复策略研究. 摘 要 恢复丢失的数据库文件在很大程度上取决于所采用的备份策略.本文从恢复的灵活性出发,对Oracle8数据库的备份及恢复策略进行了探讨,并给出了Windows 2000环境下使备份过程自动化的脚本文件的项目开发实例. 关键词 Oracle 数据库 备份 恢复 引言 随着信息系统在各种商务活动中重要性的不断增强,维护系统数据的可用性已成为当前一个十分重要的课题.为了有效地保持健康的信息系统,必须采取一定的措施防止在由介质.操作