您的位置:首页 > 数据库 > MySQL

mysql备份与恢复

2016-09-21 17:28 162 查看
一 mysql备份

  mysqldump命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。

  mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后,将表中的所有记录转换成一条INSERT语句。然后通过这些语句,就能够创建表并插入数据。

  1、备份一个数据库

  mysqldump基本语法:

  mysqldump -u username -p dbname table1 table2 ...-> BackupName.sql

  其中:

dbname参数表示数据库的名称;

table1和table2参数表示需要备份的表的名称,为空则整个数据库备份;

BackupName.sql参数表设计备份文件的名称,文件名前面可以加上一个绝对路径。通常将数据库被分成一个后缀名为sql的文件;

  使用root用户备份test数据库下的person表
mysqldump -u root -p test person > D:\backup.sql

2、备份多个数据库
语法:
mysqldump -u username -p --databases dbname2 dbname2 > Backup.sql

  加上了--databases选项,然后后面跟多个数据库
mysqldump -u root -p --databases test mysql > D:\backup.sql

  3、备份所有数据库

  mysqldump命令备份所有数据库的语法如下:
mysqldump -u username -p -all-databases > BackupName.sql

  示例:
mysqldump -u -root -p -all-databases > D:\all.sql

二 mysql恢复

1、还原使用mysqldump命令备份的数据库的语法如下:

  mysql -u root -p [dbname] < backup.sq

  示例:
mysql -u root -p < C:\backup.sql

  2、还原直接复制目录的备份

  通过这种方式还原时,必须保证两个MySQL数据库的版本号是相同的。MyISAM类型的表有效,对于InnoDB类型的表不可用,InnoDB表的表空间不能直接复制。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: