Banco de dados
Ao criar o banco de dados MySQL, qual a melhor codificação (colação) de caracteres a ser usada?
Escolha entre utf8mb4_general_ci e utf8_general_ci.
A colação utf8mb4_general_ci
no MySQL é uma configuração que tem algumas características importantes:
- UTF-8 e utf8mb4: Primeiramente, o
utf8mb4
no nome dessa colação indica que ela suporta o conjunto completo de caracteres Unicode, incluindo caracteres de quatro bytes, como os encontrados no chinês tradicional, japonês, coreano e emoji. Isso é importante, pois a colaçãoutf8_general_ci
só suporta um subconjunto de caracteres Unicode (aqueles que se ajustam em 3 bytes), e não pode lidar com emojis ou caracteres de quatro bytes. - Comparação de caracteres: A comparação de caracteres em
utf8mb4_general_ci
é insensível a maiúsculas e minúsculas, o que significa que “A” e “a” serão tratados como iguais, assim como “Á” e “á”. Além disso, a comparação é insensível a acentos, o que significa que “é” será considerado igual a “e”. Por fim, essa colação também é insensível a kana (a escrita japonesa). - Ordenação: A ordenação de caracteres na colação
utf8mb4_general_ci
é insensível a acentos, o que significa que a ordem de classificação dos caracteres não é afetada por acentos. Isso pode ser útil em certos contextos linguísticos onde as diferenças de acento não alteram a ordem das palavras. - Comparação de strings: A comparação de strings usando
utf8mb4_general_ci
é binária, o que significa que os caracteres são comparados byte a byte. Isso pode ser útil em casos onde a sensibilidade a acentos não é desejada e onde a ordem de classificação de acentos não é relevante. - Case Insensitive: A colação
utf8mb4_general_ci
é insensível a maiúsculas e minúsculas, o que significa que “A” é considerado o mesmo que “a”.
Em resumo, utf8mb4_general_ci
é uma colação que suporta o conjunto completo de caracteres Unicode, é insensível a maiúsculas e minúsculas, insensível a acentos e insensível a kana (escrita japonesa). É uma boa escolha para ambientes multilíngues onde caracteres de quatro bytes (como emojis) são comuns e a ordem de classificação de acentos não é importante.
Claro, posso fazer um comparativo entre utf8mb4_general_ci
e utf8_general_ci
no MySQL:
- Suporte a Caracteres: A diferença principal entre as duas colações está no suporte a caracteres.
utf8_general_ci
suporta apenas uma parte do conjunto de caracteres Unicode, enquantoutf8mb4_general_ci
suporta o conjunto completo, incluindo caracteres de quatro bytes como os encontrados em chinês, japonês, coreano e emoji. - Insensibilidade a Maiúsculas e Minúsculas: Ambas as colações são insensíveis a maiúsculas e minúsculas, o que significa que “A” é considerado igual a “a”.
- Insensibilidade a Acentos: Ambas as colações são insensíveis a acentos, o que significa que “é” é considerado igual a “e”.
- Comparação Binária:
utf8mb4_general_ci
realiza comparações binárias, o que significa que os caracteres são comparados byte a byte.utf8_general_ci
realiza comparações semelhantes, mas pode não ser tão eficiente quantoutf8mb4_general_ci
para caracteres de quatro bytes. - Tamanho de Caracteres: Outra diferença prática é que
utf8mb4_general_ci
pode ocupar mais espaço de armazenamento do queutf8_general_ci
, devido ao suporte a caracteres de quatro bytes. - Ordenação: Em termos de ordenação, ambas as colações são insensíveis a acentos, mas a ordenação pode ser diferente devido ao suporte de
utf8mb4_general_ci
a caracteres de quatro bytes.
Resumindo, utf8mb4_general_ci
é uma escolha mais robusta e abrangente para ambientes multilíngues e para sistemas que precisam de suporte a caracteres de quatro bytes, como emojis. utf8_general_ci
, por outro lado, é uma opção mais restrita que pode ser mais eficiente em termos de armazenamento, mas é menos capaz em termos de suporte a caracteres.
Na base de dados local, posso usar root sem senha para o wordpress?
Sim. Na instalação basta indicar o usuário root e deixar a senha em branco.
Deixe um comentário