wallabag/wallabag — pull request #843 by rros (2014-09-18 20:30:59+00:00)
Title: Convert the MySQL charset to utf8mb4 to support the full range of unicode

MySQL with charset utf8 only supports Unicode-characters which fit in 4-bytes. If you try to store Unicode-text with characters which don't fit in 4-bytes, MySQL will truncate everything after that character. In MySQL 5.5.3 the `utf8mb4` charset has been added which implements full UTF8 support.

These articles explains it pretty good:
* https://mathiasbynens.be/notes/mysql-utf8mb4
* http://geoff.greer.fm/2012/08/12/character-encoding-bugs-are-𝒜wesome/

When I add the second link to Wallabag, everything after the '𝒜'-character is truncated by MySQL. Which results in this:
![2014-09-18_213825](https://cloud.githubusercontent.com/assets/279664/4326228/2411b816-3f6d-11e4-9dde-91dbce715077.png)

With this simple fix:
![2014-09-18_213647](https://cloud.githubusercontent.com/assets/279664/4326231/28990786-3f6d-11e4-9e2b-9c0ca6c67462.png)

To convert an existing database you canrun the following queries:
```sql
ALTER TABLE `wallabag`.`config` CONVERT TO CHARACTER SET utf8mb4;
ALTER TABLE `wallabag`.`entries` CONVERT TO CHARACTER SET utf8mb4;
ALTER TABLE `wallabag`.`tags` CONVERT TO CHARACTER SET utf8mb4;
ALTER TABLE `wallabag`.`tag_entries` CONVERT TO CHARACTER SET utf8mb4;
ALTER TABLE `wallabag`.`users` CONVERT TO CHARACTER SET utf8mb4;
ALTER TABLE `wallabag`.`users_config` CONVERT TO CHARACTER SET utf8mb4;
```