La replicación en MySQL funciona para tablas
        InnoDB del mismo modo que lo hace para tablas
        MyISAM. Es posible usar replicación en una
        forma en que el tipo de tabla en el servidor esclavo no es igual
        a la tabla original en el servidor maestro. Por ejemplo, se
        pueden replicar modificaciones de una tabla
        InnoDB en el servidor maestro sobre una tabla
        MyISAM en el servidor esclavo.
      
        Para configurar un nuevo esclavo para un servidor maestro, se
        debe realizar una copia del espacio de tablas
        InnoDB y de los ficheros de registro, así
        como de los ficheros .frm de las tablas
        InnoDB, y mover las copias al servidor
        esclavo. El procedimiento adecuado para esto se encuenta en
        Sección 15.9, “Trasladar una base de datos InnoDB a otra máquina”.
      
        Si se puede detener el servidor maestro o un esclavo existente,
        se puede tomar un backup en frío del espacio de tablas
        InnoDB y de los ficheros de registro y
        utilizarlos para configurar un servidor esclavo. Para crear un
        nuevo esclavo sin detener ningún servidor, se puede utilizar la
        herramienta comercial
        InnoDB
        Hot Backup tool.
      
        Una limitación menor en la replicación
        InnoDB es que LOAD TABLE FROM
        MASTER no funciona con tablas de tipo
        InnoDB. Hay dos posibles soluciones:
        
Hacer un volcado de la tabla en el maestro e importarlo dentro del esclavo.
              Utilizar ALTER TABLE
               en el maestro antes de realizar la
              replicación con nombre_tabla
              TYPE=MyISAMLOAD TABLE
              , y luego emplear nombre_tabla FROM
              MASTERALTER
              TABLE para convertir la tabla en el maestro
              nuevamente a InnoDB.
            
Las transacciones que fallen en el maestro no afectan en absoluto la replicación. La replicación en MySQL se basa en el registro (log) binario donde MySQL registra las sentencias SQL que modifican datos. Un esclavo lee el registro binario del maestro y ejecuta las mismas sentencias SQL. Sin embargo, las sentencias emitidas dentro de una transacción no se graban en el registro binario hasta que se confirma la transacción, en ese momento todas las sentencias son grabadas de una vez. Si una sentencia falla, por ejemplo por infringir una clave foránea, o si se cancela una transacción, ninguna sentencia se guarda en el registro binario y la transacción no se ejecuta en absoluto en el servidor esclavo.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

