English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Solución al problema de los caracteres chinos ilegibles en la base de datos MySQL bajo Mac:
Cuando usamos el framework para realizar operaciones de almacenamiento en la base de datos, a menudo nos enfrentamos al problema de los caracteres chinos ilegibles.
Por ejemplo: al usar el framework SSH en Java, necesitamos configurar el filter de codificación en el archivo web.xml, el código específico es:
<span style="font-family:FangSong_GB2312;font-size:14px;"><!-- El procesamiento del formulario está enmascarado, debe estar antes del 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>
Luego, al almacenar datos en la base de datos, descubrimos que los caracteres chinos almacenados en la base de datos siguen siendo ilegibles, en este momento, al depurar el proyecto, descubrimos que el valor de parámetro pasado al SQL ya es el chino normal,
Entonces, en este momento, necesitamos verificar la codificación de la base de datos.
Ver el formato de codificación predeterminado utilizando la orden SQL:
<span style="font-family:FangSong_GB2312;font-size:14px;">show variables like "%char%";</span>
Verificar el formato de codificación de la base de datos test:
<span style="font-family:FangSong_GB2312;font-size:14px;">show create database test;</span>
Luego realizamos la modificación de la codificación de MySQL bajo Max:
Dado que el conjunto de caracteres predeterminado de MySql en la versión Mac no es utf-8, por lo que se necesitan los siguientes pasos para modificar
Escriba en el terminal
<span style="font-family:FangSong_GB2312;font-size:14px;">sudo -s</span>
Luego se le pedirá que ingrese una contraseña, esta contraseña es la contraseña del sistema!
Escriba en la línea de comandos
<span style="font-family:FangSong_GB2312;font-size:14px;">cd /usr/local/mysql/support-files</span>
Siga escribiendo (copia el archivo al directorio etc)
<span style="font-family:FangSong_GB2312;font-size:14px;">cp my-default.cnf /etc/my.cnf</span>
Siga escribiendo (ingrese al directorio etc)
<span style="font-family:FangSong_GB2312;font-size:14px;">cd /etc</span>
Siga escribiendo
<span style="font-family:FangSong_GB2312;font-size:14px;">vimy.cnf</span>
En este momento, notará que el archivo my.cnf se abrió con el programa vi, el desplazamiento del cursor hacia arriba y hacia abajo se realiza mediante las teclas h, j, k, l del teclado, la versión del sistema Mac puede ser diferente10.9.3¡La tecla del cursor del sistema está en efecto!
Luego presione la tecla j para mover el cursor al final de [client], agregue un atributo: (o use la tecla de desplazamiento)
<span style="font-family:FangSong_GB2312;font-size:14px;">default-character-set=utf8(este atributo mysql 5.5después no se puede usar en
se agrega debajo de mysqld, es decir5.5en versiones anteriores, en versiones posteriores ignore este atributo)</span>
Continúe presionando la tecla, mueva el cursor después de [mysqld], agregue3un atributo
<span style="font-family:FangSong_GB2312;font-size:14px;">default-storage-engine=INNODB character-set-server=utf8 collation-server=utf8_general_ci</span>
Presione la tecla ESC en la esquina superior izquierda del teclado para salir del modo de edición, luego ingrese un dos puntos y una letra x
Reinicie el servicio de MySql
¡Ahora, al ejecutar nuevamente la operación de base de datos, el chino se puede almacenar normalmente!
Gracias por leer, espero que pueda ayudar a todos, ¡gracias por el apoyo a nuestro sitio!