Add support for MySQL columns charset and collation options.

MySQL is possible to specify charset and collation in each column.

This is useful to for a case-sensitive search or specify charset `ascii` to secret_token column.

Index size of string column depends on maxlen of that charset. In the case of strict_mode, it can be in error INSERT of characters that are not included in that charset.

Why are we setting a default charset based on the collation?