注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

胡益兵的博客

新的岗位,新的方向,新的使命,stem教育进行中。

 
 
 

日志

 
 

【转】MySQL InnoDB数据库备份与还原  

2012-12-12 23:30:47|  分类: linux应用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

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/

-------------------------------------------------------------------------------------------------------------------------------------

实验结果:

备份过程没有问题

在恢复前,先要删除ibdata1、ib_logfile0等文件,然后重启动mslq,

输入mysql -u root -proot进入myslq

输入source  /your_backup_place/mysqldump.sql

完成恢复

对单个数据库备份参阅http://tech.it168.com/a2011/0104/1146/000001146052.shtml

-------------------------------------------------------------------------------------------
12月14日实验
备份指定数据库:mysqldump -uDBuser -pPassword --databases db1 db2  > /your_backup_place/mysqldump.sql
参数:--single-transaction 只对innodb有效,在备份时确保没有任何DDL语句执行,保证备份的一致性。
恢复数据: msyql  -uDBuser -pPassword </your_backup_place/mysqldump.sql
也可以进入mysql后恢复:source /your_backup_place/mysqldump.sql;

  评论这张
 
阅读(207)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018