[TYPO3] MySQL: using InnoDB instead of MyISAM tables

Steffen Müller steffen at mail.kommwiss.fu-berlin.de
Mon Oct 23 22:02:58 CEST 2006


On 23.10.2006 18:44 Christian Welzel wrote:
> Dmitry Dulepov wrote:
> 
>> http://lists.netfielders.de/pipermail/typo3-team-core/2006-October/005943.html
> 
> I'm not sure, but i believe that the InnoDB table type
> has to be activated in the mysql config. I had a quick
> look into my providers config and there InnoDB is not enabled.
> 
> so its a bad idea to force certain tables to InnoDB during installation!
> It would make typo3 uninstallable on many webhosters.
> 

I just did a quick test, disabling the InnoDB engine on a server with
MySQL 4.0 and then trying to alter/create a table with innodb as type.
Good news: It seems like there's a fallback mode to MyISAM:

<--- snip

mysql> CREATE TABLE test1 (a INT) ENGINE=MyISAM;
Query OK, 0 rows affected (0.01 sec)

mysql> ALTER TABLE test1 TYPE=InnoDB;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> CREATE TABLE test2 (a INT) ENGINE=InnoDB;
Query OK, 0 rows affected (0.01 sec)

mysql> SHOW TABLE STATUS FROM test LIKE 'test2';
+---------+--------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+----------------+---------+
| Name    | Type   | Row_format | Rows | Avg_row_length | Data_length |
Max_data_length | Index_length | Data_free | Auto_increment |
Create_time         | Update_time         | Check_time | Create_options
| Comment |
+---------+--------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+----------------+---------+
| test2 | MyISAM | Fixed      |    0 |              0 |           0 |
  21474836479 |         1024 |         0 |           NULL | 2006-10-23
21:48:27 | 2006-10-23 21:48:27 | NULL       |                |         |
+---------+--------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+----------------+---------+
1 row in set (0.00 sec)

snap --->

Somebody please test this on other versions of mysql.

Btw, mysql doc says:
"Beginning with MySQL 4.0, InnoDB is enabled by default"
and further:
"InnoDB tables are included in the MySQL source distribution starting
from 3.23.34a and are activated in the MySQL-Max binaries of the 3.23
series."

http://dev.mysql.com/doc/refman/4.1/en/innodb-in-mysql-3-23.html

-- 
cheers,
Steffen



More information about the TYPO3-english mailing list