MYSQL数据库备份还原

时间:2021-03-11 03:17:37

MYSQL数据库备份还原

一、  数据库备份

备份数据是数据库管理最常用的操作。为了保证数据库中数据的安全,数据管理员需要定期地进行数据备份。一旦数据库遭到破坏,即可通过备份的文件来还原。因此,数据备份是很重要的工作。

1、使用mysqldump 命令备份

mysqldump 命令可以将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。mysqldump 命令的工作原理很简单: 它先查出需要备份的表的结构,再在文本文件中生成一个CREATE 语句,然后将表中的所有记录转换成一条INSERT 语句。还原数

据时就可以使用其中的CREATE 语句来创建表,使用其中的INSERT 语句来还原数据。

使用mysqldump 命令备份一个数据库的基本语法如下:

mysqldump –u username –pPassword dbname table1t able2...>BackupName.sql

                     2、通过复制进行备份

MySQL 有一种最简单的备份方法,就是将其中的数据库文件直接复制出来。这种方法最简单,速度也最快。使用该方法时,最好将服务器先停止,这样可以保证在复制期间数据库中的数据不会发生变化。如果在复制数据库的过程中还有数据写入,就会造成数据不一致。这种方法虽然简单快捷,但不是最好的备份方法。因为,实际情况可能不允许停止MySQL服务器。而且,这种方法对InnoDB 存储引擎的表不适用。对于MyISAM 存储引擎的表,这样备份和还原很方便。但是还原时最好是相同版本的MySQL 数据库,否则可能会出现存储文件类型不同的情况。

3、使用msqlhotcopy工具快速备份

如果备份时不能停止MySQL 服务器,可以采用msqlhotcopy工具。msqlhotcopy工具的备份 方式比msqlhotcopy命令快。msqlhotcopy工具是一个Perl脚本,主要在Linux操作系统下使用。msqlhotcopy工具使用LOCKTABLES、FLUSTABLES和cp进行快速备份。其工作原理是,先将需要各份的数据IMET-使提作锁。然后,用FUSHTALES将内存中的数据写回到硬位上的数据本中。最后,把需要备份的数据库文件复制到目标目录下。

MYSQL数据库备份还原MYSQL数据库备份还原

 

二、  数据库还原

管理员的非法操作和计算机的故障都会破坏数据库文件。当数据库遇到这些意外时,可以通过备份文件将数据库还原到备份时的状态,这样可以将损失降低到最小。

  1. 使用mysql还原

通常使用myqdump命令将数据库的数据备份成一个文本文件,通常这个文件的后缀名是.sql。需要还原时,可以使用mysql 命令来还原备份的数据。备份文件中通常包含CREATE 语句和INSERT 语句。mysql 命令可以执行备份文件中的CREATE 诸句和INSERT 语旬,通过CREATE 语句来创建数据库和表,通过INSERT 语句来插入备份的数据。mysql 命令的基本语法如下,

        mysql –u root –pPassword [dbname]  <backup.sql

执行完后,MySQL数据库中就已经还原了all.sql文件中所有数据库

              2.通过复制进行还原

通过这种方式还原时,必须保证两个MySQL 数据库的主版本号是相同的,而且这种方式对MyISAM 类型的表比较有效,对于InnoDB类型的表则不可用,因为InnoDB表的表空间不能直接复制。

MYSQL数据库备份还原MYSQL数据库备份还原