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