主页 > 数据库技术 > MySQL InnoDB数据库备份与还原

MySQL InnoDB数据库备份与还原

PDF版本

MySQL数据库MyISAM类型的备份和管理很方便,本文就如何备份还原InnoDB数据库做一下经验分享。

首先,为什么要这么做呢,因为我工作于一个大型drupal项目,数据库文件很大,而且每个新特性都在分支上进行开发,这样意味着我需要搭建多个本地环境,并且经常需要删除旧的分支,建立新的分支。

由于数据库使用的大部分是InnoDB引擎,而InnoDB在分配了空间以后是不释放,也不可以被重用的(这里可能是我还没找对方法),所以由于我这样频繁的建立和删除数据库导致了InnoDB的数据库文件越来越大。所以决定给数据库文件瘦身。

InnoDB的数据库文件默认是公用ibdata1,在我本地已经达到17G之多,并且还在不断变大。

以下是瘦身步骤,注意瘦身之前对原始的ibdata1文件做好备份。

1,在命令行或者PHPMyAdmin里删除不需要的数据库。

2,备份所有的数据库:

mysqldump -uDBuser -pPassword --quick --force --routines --add-drop-database --all-databases --add-drop-table > /your_backup_place/mysqldump.sql

这里主要是看后面的可选参数,这个操作是备份的全部数据库,如果本地数据库较多,会很慢。当然导入的时候会更慢,我是为了省空间不得已为之,大家如果也有和我一样的想法,使用本文的方案后果自负。

3,删除ibdata1文件,导入时会自动建立的。其余数据库不用管,因为导入时会先删后建。

4,进入MYSQL命令行使用source命令进行导入。

最后,不管大家是否能执行成功,反正我是成功了。:)


声明: 本站所有文章欢迎转载,所有文章未说明,均属于原创,转载均请注明出处。
本文有效链接: http://www.drupal001.com/2011/10/local-innodb-backup-and-restore/
版权所有: Drupal与高性能网站架构 http://www.drupal001.com


,

评论:1

发表评论
  1. avatar
    回复 Stacy
    11/10/19

    博主太有才了!我学习了

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注


+ 5 = 十三

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

引用:0

下面所列的是引用到本博客的链接
MySQL InnoDB数据库备份与还原 来自 Drupal与高性能网站架构
顶部