Secciones

martes, 8 de abril de 2014

Magento - Database server does not support the InnoDB storage engine

Al instalar Magento 1.7.x
Da el siguiente error:
Database server does not support the InnoDB storage engin

El problema es debido al chequeo que hace sobre el MySql en el
archivo app/code/core/Mage/Install/Model/Installer/Db/Mysql4.php

en la funcion de la linea 59,

    public function supportEngine()
    {
        $variables  = $this->_getConnection()
            ->fetchPairs('SHOW VARIABLES');
        return (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') ? false : true;
    }

La forma rapida, es modificar la funcion para que devuelva siempre True

ej:

    public function supportEngine()
    {
        $variables  = $this->_getConnection()
            ->fetchPairs('SHOW VARIABLES');
//        return (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') ? false : true;
return true;
    }

y luego de la instalacion reestablecerlo como estaba originalmente

El problema radica en que la variable 'have_innodb' no se encuentra a partir de una determinada version en el MySql.

Saludos.

*-*
Sebastian A. Colombini