MySQL: what collation and storage engine to use?

I'm starting a new (big) project in PHP that will cater for multiple languages (including Arabic). What would be the best:

1) Storage engine: InnoDB or MyISAM?
2) Collation?
Who is Participating?
Guy Hengel [angelIII / a3]Connect With a Mentor Billing EngineerCommented:
>1) Storage engine: InnoDB or MyISAM?
that depends on your needs.
MyISAM is faster, but does not support features like transactions, foreign keys etc.

2) Collation?
also depends on your needs. for multiple languages, you need to specify UTF-8 or UTF-16
I`d prefer InnoDB, because it allows to build more complex DB structure
and UTF-8 for multi-language support
DarkHillAuthor Commented:
OK, I've decided on utf8_general_ci as it's both case- and accent-insensitive which is great.

Now just to decide which storage engine to use...
Guy Hengel [angelIII / a3]Billing EngineerCommented:
as I wrote, there are some constraints for the MyISAM engine type.

note: you can mix engine types in your database, means you can create tables of MyISAM engine in the same database where you create InnoDB tables...
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.