Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.


I'm creating a service like FriendFeed. For the database, what's the best to have the tables with InnoDB or MyISAM?

  • There are a lot of selects and Inserts.
  • The table must be serchable, sortable when a user is inserting something.
  • At the end, it must have quite a lot of rows. (Depending on the table).
  • First, the database will be in one server.
  • I would like backup without locking the tables.

Thanks.

share|improve this question

3 Answers 3

MyISAM won't allow you to backup without locking the tables on an unique server (without slave), and any insert will also locks the table... so you should choose InnoDB

share|improve this answer

Only MyISAM supports mysql full-text search, whereas InnoDB supports foreign keys and such. Both sure are interesting for what you want to achieve.

If you can't decide, why not try a mix of both, combining their strengths by applying them selectively on tables where their respective qualities are needed ?

share|improve this answer
    
Not only MyISAM, Sphinx too :) –  sumar Sep 23 '10 at 12:27

MyISAM is better for read-heavy tables and InnoDB is better for write-heavy table. If you have a mix of reads and writes, and if it's possible to design your writes to use only 1 key read, then MyISAM would be better.

Not sure about the back-up part however. Does copying the database files in the filesystem directly work for you?

share|improve this answer

Your Answer

 
discard

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.