English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Solução para problemas de código de caracteres chineses no banco de dados MySQL no Mac

Solução para problemas de codificação ilegível de chinês no banco de dados MySQL no Mac:

Quando usamos o framework para operações de armazenamento no banco de dados, frequentemente encontramos problemas de codificação ilegível de chinês.

Por exemplo: ao usar o framework SSH em Java, precisamos configurar o filter de codificação no arquivo web.xml, o código específico é:

<span style="font-family:FangSong_GB2312;font-size:14px;"><!-- O processamento do formulário está ilegível, deve ser antes do filter OpenSessionInViewFilter --> 
<filter> 
  <filter-name>CharacterFilter</filter-name> 
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 
  <init-param> 
    <param-name>encoding</param-name> 
    <param-value>UTF-8</param-value> 
  </init-param> 
</filter> 
<filter-mapping> 
  <filter-name>CharacterFilter</filter-name> 
  <url-pattern>/*</url-pattern> 
</filter-mapping></span> 

Depois de armazenar no banco de dados, descobrimos que o chinês ainda é ilegível no banco de dados, neste momento, ao depurar o projeto, descobrimos que o valor do parâmetro SQL introduzido já é chinês normal.

Neste momento, precisamos verificar a codificação do banco de dados.

Usar o comando SQL para verificar o formato de codificação padrão:

<span style="font-family:FangSong_GB2312;font-size:14px;">show variables like "%char%";</span> 

Verificar o formato de codificação do banco de dados test:

<span style="font-family:FangSong_GB2312;font-size:14px;">show create database test;</span> 

Então vamos fazer a modificação de codificação do MySQL no Max:

Devido ao fato de que o MySql padrão do Mac não é utf-8, então precisamos seguir os seguintes passos para fazer a modificação

Digite no terminal

<span style="font-family:FangSong_GB2312;font-size:14px;">sudo -s</span> 

Então será solicitado a senha, esta senha é a senha do sistema!

Digite na linha de comando

<span style="font-family:FangSong_GB2312;font-size:14px;">cd /usr/local/mysql/support-files</span> 

Continue digitando (copia o arquivo para o diretório etc)

<span style="font-family:FangSong_GB2312;font-size:14px;">cp my-default.cnf /etc/my.cnf</span> 

Continue digitando (entre no diretório etc)

<span style="font-family:FangSong_GB2312;font-size:14px;">cd /etc</span> 

Continue digitando

<span style="font-family:FangSong_GB2312;font-size:14px;">vimy.cnf</span> 

Neste momento, você perceberá que o vi abriu o arquivo my.cnf, e o movimento do cursor para cima, para baixo, para a esquerda e para a direita é feito pelas teclas h, j, k, l no teclado, o sistema Mac pode ser diferente10.9.3O cursor do sistema é o tecla que funciona!

Então pressione a tecla j para mover o cursor para o final de [client] e adicione um atributo: (ou use a seta para baixo)

<span style="font-family:FangSong_GB2312;font-size:14px;">default-character-set=utf8(Este atributo mysql 5.5depois não pode ser

aumentar abaixo de mysqld, também conhecido como5.5nas versões anteriores, nas versões posteriores ignore este atributo)</span> 

Continue pressionando a tecla, mova o cursor para após [mysqld] e adicione3um atributo

<span style="font-family:FangSong_GB2312;font-size:14px;">default-storage-engine=INNODB 
character-set-server=utf8 
collation-server=utf8_general_ci</span> 

Pressione a tecla esc no canto superior esquerdo do teclado para sair do modo de edição, então insira um dois-pontos e uma letra x

Reinicie o serviço do MySql

Agora, ao executar novamente a operação no banco de dados, o chinês pode ser armazenado normalmente!

Obrigado por ler, espero que ajude a todos, obrigado pelo apoio ao site!

Você também pode gostar