Por defecto, las bases de datos MySQL tienen un juego de caracteres latin1 y una intercalación. Sin embargo, a veces es posible que necesite almacenar caracteres UTF8 en la base de datos MySQL. Aquí se explica cómo cambiar el conjunto de caracteres de latin1 a UTF8.
Cómo convertir la base de datos MySQL de latin1 a UTF8
Estos son los pasos para cambiar el conjunto de caracteres de latin1 a UTF para la base de datos MySQL.
1. Determinar el juego de caracteres actual
Inicie sesión en la herramienta de línea de comandos de MySQL. Verá una solicitud de contraseña. Introduzca su contraseña para iniciar sesión en la base de datos MySQL.
$ sudo mysql -uroot -p
Ejecute el siguiente comando para determinar el conjunto de caracteres actual de su base de datos. Reemplace nombre_de_base_de_datos a continuación con el nombre de su base de datos
mysql> SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name = "database_name"; +----------------------------+ | default_character_set_name | +----------------------------+ | latin1 | +----------------------------+
Si desea determinar el juego de caracteres para una tabla de base de datos específica, ejecute el siguiente comando. Reemplace nombre_base_datos y nombre_tabla con los nombres de su base de datos y tabla respectivamente.
mysql> SELECT CCSA.character_set_name FROM information_schema.TABLES
T, information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
CCSA WHERE CCSA.collation_name = T.table_collation AND T.table_schema = "database_name" AND T.table_name = "table_name";
Lectura adicional:Cómo aumentar las conexiones máximas en MySQL
2. Cambiar el conjunto de caracteres de latin1 a UTF8
Ejecute el siguiente comando para cambiar el conjunto de caracteres de la base de datos MySQL de latin1 a UTF8. Reemplace nombre_base_de_datos con el nombre de su base de datos
Para MySQL> 5.5
mysql> ALTER DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Para MySQL <=5.5
mysql>ALTER DATABASE database_name CHARACTER
SET utf8 COLLATE utf8_unicode_ci;
Lectura adicional:Cómo clasificar sobre la partición en MySQL
Del mismo modo, aquí está el comando para cambiar el conjunto de caracteres de la tabla MySQL de latin1 a UTF8. Reemplace table_name con el nombre de la tabla de su base de datos.
Para MySQL> 5.5
mysql> ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Para MySQL <=5.5
mysql>ALTER TABLE table_name CONVERT TO CHARACTER
SET utf8 COLLATE utf8_unicode_ci;
Con suerte, el tutorial anterior lo ayudará a cambiar el conjunto de caracteres de la base de datos a utf8mb4 (UTF-8).