Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'd like to use InnoDB on the master, for its transactional ability, but MyISAM on the slaves for the full-text search ability. Is this possible?

share|improve this question
up vote 9 down vote accepted

Absolutely !!!

Just run ALTER TABLE tblname ENGINE=MyISAM; against all tables on the Slave that you want to have the FULLTEXT index. Afterwards, you can run ALTER TABLE tblname ADD FULLTEXT (column[,column]);.

Please be very careful not to run DDL against those tables in the Master that are unique to InnoDB that will replicate to the Slave.

I have suggested using a different Storage Engine on a Slave in my past posts:

share|improve this answer
Good news! You are the man Rolando. – Neil McGuigan Aug 14 '12 at 2:59
It works great, I have a syslog system, where the master collects data into the BLACKHOLE storage engine, which then off-loads all the heavy lifting to the slave running combinations of MyISAM and InnoDB. This way I can pause the slave in order to analyse the data, leaving the master collecting and only using log storage :) – Dave Rix Aug 14 '12 at 8:07

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.