mysql备份恢复的原理_MySQL 备份和其恢复机制原理简述

文章首要探讨的是 MySQL 备份和其恢复机制,以及对维护数据表的正确维护,其中首要包括的两种不一样表的类型有MyISAM 与 Innodb,文中所设计的 MySQL 版本为 5.0.22。以下就是详细内容的描画。

现在 MySQL 支持的不花钱MySQL 备份工具有:mysqldump、mysqlhotcopy,还能够用 SQL 语法执行备份:BACKUP TABLE 或许 SELECT INTO OUTFILE,又或许备份二进制日志(binlog),还能够是直接拷贝数据文件和有关的配置文件。MyISAM 表是保管成文件的方式,因而相比拟较容易备份,上面提到的几种方法都能够运用。Innodb 一切的表都保管在同一个数据文件 ibdata1 中(也能够是多个文件,或许是独立的表空间文件),相对来说比拟不好备份,不花钱的方案能够是拷贝数据文件、备份 binlog,或许用 mysqldump。

1、mysqldump

1.1 备份

mysqldump 是采用SQL级别的备MySQL 份机制,它将数据表导成 SQL 脚本文件,在不一样的 MySQL 版本之间晋级时相比拟较合适,这也是最常用的备份方法。

如今来讲一下 mysqldump 的一些首要参数:

compatible=name它通知 mysqldump,导出的数据将和哪种数据库或哪个旧版本的 MySQL 服务器相兼容。值能够为 ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options 等,要运用多个值,用逗号将它们隔开。当然了,它并不保证能完全兼容,而是尽量兼容。

complete-insert,-c导出的数据采用包括字段名的完壁 INSERT 方式,也就是把一切的值都写在一行。这么做能提高插入效率,但是能够会遭到 max_allowed_packet 参数的影响而招致插入失败。因而,须要慎重运用该参数,至少我不推荐。

default-character-set=charset指定导出数据时采用何种字符集,假设数据表不是采用默许的 latin1 字符集的话,那么导出时必需指定该选项,否则再次导入数据后将发生乱码疑问。

disable-keys通知 mysqldump 在 INSERT 语句的开头和开头添加 /*!40000 ALTER TABLE table DISABLE KEYS */; 和 /*!40000 ALTER TABLE table ENABLE KEYS */; 语句,这能大大提高插入语句的速度,由于它是在插入完一切限据后才重建索引的。该选项只合适 MyISAM 表。

extended-insert = truefalse默许情况下,mysqldump 开启 --complete-insert 方式,因而不想用它的的话,就运用本选项,设定它的值为 false 即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值