MySQL/MariaDB - InnoDB vs MyISAM

This public forum is for user-to-user discussions of PHPMaker. Note that this is not support forum.
Post Reply
konfuzion
User
Posts: 378

MySQL/MariaDB - InnoDB vs MyISAM

Post by konfuzion »

I noticed after executing the demo2024.sql, only 2 tables are myISAM. userlevelpermissions and userlevel
Is it ok to just leave it as myISAM or should convert to InnoDB? What is the reason for keeping it as myISAM?

cars - InnoDB
*othertables* - InnoDB
suppliers - InnoDB
tasks - InnoDB
trademarks - InnoDB
userlevelpermissions - myISAM
userlevel - myISAM

mobhar
User
Posts: 11794

Post by mobhar »

You may Google "mysql myisam vs innodb" for more info.


arbei
User
Posts: 9496

Post by arbei »

You better convert them to InnoDB also.


konfuzion
User
Posts: 378

Post by konfuzion »

yes, will convert all to InnoDB and maybe time to update the demo2024 sql script and change it to InnoDB as well


konfuzion
User
Posts: 378

Post by konfuzion »

I created my tables in mariadb as InnoDB

With debug on and just entering a LIST page, why does it display: SHOW TABLE STATUS WHERE Engine = 'MyISAM' ?
Where can I make the change from MyISAM to InnoDB?

[DEBUG ON]
sql: SHOW TABLE STATUS WHERE Engine = 'MyISAM' AND Name = 'customers', executionMS: 0.0055088996887207

sql: SELECT COUNT(*) FROM customers, executionMS: 0.00053691864013672

sql: SELECT * FROM customers LIMIT 20, executionMS: 0.00035810470581055

I noticed if I click on ORDERS and then click back to CUSTOMERS then that MyISAM line disappears

[DEBUG ON]
sql: SELECT COUNT(*) FROM customers, executionMS: 0.00053691864013672

sql: SELECT * FROM customers LIMIT 20, executionMS: 0.00035810470581055

arbei
User
Posts: 9496

Post by arbei »

PHPMaker will check if the table is InnoDB (i.e. Engine <> 'MyISAM') to determine if the table supports transaction, and each table will only be checked once per session. You do not need to change anything at all.


Post Reply