title: utf8mb4_unicode_ci vs utf8mb4_bin
body: <p><strong>So first let's see if I get it right:</strong></p>
  
  <p>A charset is a set of symbols and encodings. A collation is a set of rules for comparing characters in a charset.</p>
  
  <p>I should use utf8mb4 because mysql utf8 is a fraud, up-to-3-bytes and not the true up-to-4-bytes real utf8 charset in PHP for example.</p>
  
  <p>As such, utf8mb4 is a charset and utf8mb4_unicode_ci/utf8mb4_bin are 2 of his many differents available collations.</p>
  
  <p>utf8_unicode_ci do case-insensitive comparison and other special comparisons ( I heard it messes up with all the accents in french for example ) . utf8_bin is case-sensitive because it compares the binary values of the character.</p>
  
  <p><strong>Now the questions:</strong></p>
  
  <ol>
  <li><p>If for example I want to allow Case-Sensitive login names using  utf8mb4_unicode_ci I will have to do things like:</p>
  
  <pre><code>SELECT name FROM table WHERE BINARY name = 'MyNaMEiSFUlloFUPPERCases';
  </code></pre></li>
  <li><p>If for example I want to allow Case-insensitive search using  utf8mb4_bin I will have to do things like:</p>
  
  <pre><code>SELECT name FROM table WHERE LOWER(name) LIKE '%myname%'
  </code></pre></li>
  <li><p>So which one is better ? What about the bad things i hear about utf8_unicode_ci and the accents/other special characters ?</p></li>
  </ol>
  
  <p>Thank you  :)</p>