在MySQL中进行数据备份的方法有两种:

  1. mysqlhotcopy

  这个命令会在拷贝文件之前会把表锁住,并把数据同步到数据文件中,以避免拷贝到不完整的数据文件,是最安全快捷的备份方法。

  命令的使用方法是:

  mysqlhotcopy -u root -pdb1 db2 … dbn

  如果需要备份全部数据库,可以加上–regexp=”.*”参数。

  Mysqlhotcopy命令可自动完成数据锁定工作,备份时不用关闭服务器。它还可以刷新日志,使备份文件和日志文件的检查点能保持同步。

  2. mysqldump

  这个命令是用来把数据库倒成sql文件的,是非常古老的命令了。

  命令的使用方法是:

  mysqldump -u root -p–hex-blob db1 db1.sql

  加上–hex-blob参数以后,blob数据会被类似BASE64的方法转换为文本来存储在sql文件中,就不会导致sql文件格式问题了。经过测试,通过这种方法备份的blob数据再重新恢复回去能够完全正确。

  如果要备份所有的数据库,可以加上–all-databases参数。

  用mysqldump命令还可直接把数据库转移到另外一台服务器上,不用生成备份文件。重复执行可定期更新远程数据库。

  % mysqladmin -h remote_host create testdb

  % mysqldump –opt testdb | mysql -h remote_host testdb

  另外还可通过ssh远程调用服务器上的程序,如:

  % ssh remote_host mysqladmin create testdb

  % mysqldump –opt testdb | ssh remote_host mysql testdb

  2种数据库备份方式的优缺点:

  使用mysqlhotcopy等程序备份速度快,因为它直接对系统文件进行操作,但是需人为协调数据库数据的备份前后一致性。

  mysqldump程序备份数据库较慢,但它生成的文本文件便于移植。

  对于没有使用InnoDB的数据库,用mysqlhotcopy是最好的方法;否则必须采用mysqldump。不论如何,直接拷贝文件的备份方法应该被废弃了。

最新文章

  1. nodejs 命令行、自定义
  2. iOS之2016面试题一
  3. iOS---去除url中的反斜扛
  4. [荐]js模版引擎handlebars.js
  5. 设计模式之美:Chain of Responsibility(职责链)
  6. Spring(九)Spring对事务的支持
  7. Android线程管理(三)——Thread类的内部原理、休眠及唤醒
  8. Unity4.6新UI系统初探(uGUI)
  9. ISBN号码
  10. htop
  11. android中细节效果总结
  12. Nanjing GDG Meetup 10月19日线下活动
  13. Windows8和Windows Phone应用开发主题编码汇总
  14. 一个sql的优化
  15. Redis数据迁移方案
  16. redis学习(2)--- Redis概述
  17. Celery 使用(一)
  18. Java设计模式之十 ---- 访问者模式和中介者模式
  19. 架构师成长之路6.2 DNS配置文件
  20. 初级字典树查找在 Emoji、关键字检索上的运用 Part-1

热门文章

  1. GMIS 2017 大会陈雨强演讲:机器学习模型,宽与深的大战
  2. 【视频】使用fiddler开发工具进行新架构页面本地调试
  3. Web开发笔记 #06# 前后端分离
  4. php 查找字符串里面中文字符第一次出现的位置,并插入字符串
  5. NATS—协议详解(nats-protocol)
  6. 01:saltstack 基本使用
  7. 51Nod 1667 概率好题 - 容斥原理
  8. Codeforces 827E Rusty String - 快速傅里叶变换 - 暴力
  9. python---02.while循环 格式化输出 运算符 编码
  10. springboot项目打包部署在指定的tomcat容器中