Reputation: 1156
I'm trying to install Magento Community Edition for my latest project on our server, however, the hosting platform we are currently using doesn't, and won't let us, install or utilise InnoDB.
Is anyone aware of any configuration/changes that can be done to make it work any other way?
Upvotes: 4
Views: 4583
Reputation: 156
I was trying to install Magento 1.9 CE on my own development server. Eventually the Magento Downloader incorrectly stated that InnoDB is not the default database engine. This was the issue I had when installing Magento CE.
Yes, it is true that MariaDB, a binary compatible replacement for MySQL uses xtradb rather than innodb as its engine.
https://mariadb.com/kb/en/mariadb/xtradb-and-innodb/
However, I am tempted to conclude the problem lies in Magento: Magento install complains about missing InnoDB when it is available
Upvotes: 0
Reputation: 12737
Magento was developed and is supposed to be used in a transaction-safe environment.
You could try switching to some other database which is transaction-safe (like Oracle), but then you'd need to write PDO adapters and resource models for Oracle by yourself (they're not part of Magento). But if your provider doesn't even support InnoDB
, I don't believe he will support Oracle or similiar^^
Another possibility would be to make Magento able to work with a non-transactional mySQL engine like MyISAM
. You'd need to rewrite many processes, core models and controllers to change Magento from transactional to non-transactional behaviour.
Not only would this be tons of work, but I'm almost sure, you would get a lot of fun each time you try to upgrade your Magento version. I'd strongly encourage to never change the core this way.
The only mySQL engines supporting transactions are InnoDB
and NDB
. Magento only ships resource models for InnoDB
. So, if you ask me, if your provider doesn't allow InnoDB
for whatever reasons, I'd recommend to just move on to another provider that does.
Upvotes: 6