MySQL 备份和检查修复问题?
问题描述
1、mysqlcheck 和 myisamchk 是不是只能检查和修复MyISAM引擎的表呢?如果要检查,修复,优化Innodb表的话,这两个命令可以用吗?看网上还像说这两个命令只能针对MyISAM表做操作,Innodb不行的,求解,这个到底是怎么回事呢?
2、我知道MyISAM表备份是可以直接导出的,或者直接复制data文件夹就可以了。但是innodb备份的时候,如果复制data文件夹,则需要先停止mysqld服务。
---------------那么问题来了:
-------------------1、MyISAM和innodb这两种表是否都可以通过导出sql的方式进行备份,因为我以前导出过,发现之后导入是用也是正常的。可是在别的地方说这种方式innodb有时候会出问题
-------------------2、如果是直接复制data文件夹的话,那么停止mysqld服务后,是否就能确保这两种表都能完美备份?
-------------------* 一般我喜欢直接.sql形式导出备份数据表,那么假如一个数据库中涉及到这两种表,我该怎么备份比较好呢?
求解,谢谢大神。
问题解答
回答1:你看你是热备还是冷备
如果你是热备的话可以用mysqldump进行热备,但是这样会锁表,应用无法向数据库进行写操作,如果必须有写操作的话,可以使用xtrabackup热备工具,支持在线热备,对innodb表不会有读写影响,但是对myisam表会锁住,如果你库里面大部分是myisam表的话,还是直接mysqldump吧。
如果是冷备,可以关闭服务的话,那么就直接逻辑备份了,(假如是myisam引擎表,那么就很爽了,直接备份datadir里面的数据文件即可,可以物理恢复数据的),innodb引擎表需要备份ibdata文件、*.frm文件和my.cnf,设置innodb_data_file_path来制定原先的ibdata路径
相关文章:
1. mysql - msql什么叫并发2. angular.js - angularjs 与requirejs集成3. javascript - jquery事件绑定中的this指向问题4. javascript - ios返回不执行js怎么解决?5. eclipse - 使用velocity时报java.lang.NoClassDefFoundError,是否少了什么包?6. mysql - JAVA怎么实现一个DAO同时实现查询两个实体类的结果集7. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题8. wordpress - Nginx中禁止访问txt,robots.txt文件例外,规则该怎么写?9. mysql - jdbc的问题10. 求大神帮我看看是哪里写错了 感谢细心解答

网公网安备