sugarcrm using myisam instead of innodb
Hi I was just thinking, after i installed sugarcrm.I just went through the tables . But i do no开发者_如何学Ct see the engine as Innodb.It uses the MyIsam,how come it is able to maintain relationships. COuld anybody let me know about this Thanks
Because not all of mySQL's database engines (like myISAM) support relationships, SugarCRM does not create relationships at the database layer. Relationships are defined at the application level in vardefs.php
.
SugarCRM does not maintain foreign key constraints at all, neither does it use transactions (at least with MySQL). This is a major design flaw of SugarCRM (the biggest of many) and can cause really great troubles if you start customizing the system.
A nice thing about the MyIsam tables is that they allow the Sugar database to be backed up or duplicated using file commands on the db directory -- just like you would for the Sugar application files. :^)
SugarCRM can and will use InnoDB if it is the default selected DB engine for MySQL.
We actually prefer people to use InnoDB as the record level locking versus table level locking is much better for transactional applications like Sugar. Yes, we don't take advantage of foreign key restraints ( which tend not to perform as well in MySQL ) nor transactions, but both items are on our roadmap for support in the future.
精彩评论