关于数据库中有2种存储引擎 myisam 和 innodb 进行热备份问题  我个人认为,要分2次mysqldump 来备份2中存储引擎,但各位大哥说只用1次就行。  如果说数据库中既有myisam和innodb 两种存储引擎 如果说MYISAM进行热备份的时候,需要进行--lock-all-tables操作。  必然也锁定了innodb表。。   可是我对innodb表进行热备份的时候根本不需要进行lock table...。   我对innodb热备份使用 --single-transaction ...  也是就说。如果一起备份。我锁了全部的表,不是对innodb的表的插入有影响吗?  大家明白我的意思吧。。

解决方案 »

  1.   

    猜出不你的问题到底是什么,好象关于这个问题你已经发了不少贴了。我只能说如下
    1.  一个mysqldump 完全可以把所有表一次性导出。 (当然你哪怕想分成100次也可以)
    2. mysqldump 默认下虽会一个一个表依次导出。如果需要考虑各表的数据一致性,则需要加锁或者事务。MyISAM不支持事务,只能加锁。
    3. 在备份中,不管是myisam或inodb, 你是否允许在你的备分过程中其它程序继续修改表中数据? 这与存储引擎无关,是你自己的备份策略问题。回答是,当然有影响。反过来要问你自己 "3. 在备份中,不管是myisam或inodb, 你是否允许在你的备分过程中其它程序继续修改表中数据? 这与存储引擎无关,是你自己的备份策略问题。"