sql >> Base de Datos >  >> Database Tools >> SQLyog

Establecer la conexión/servidor MySQL en utf8mb4 en lugar de uft8 está rompiendo los procedimientos almacenados en SQLYog

De SQLyog:

SET NAMES 'utf8mb4' COLLATE 'utf8_bin';

Error Code: 1253
COLLATION 'utf8_bin' is not valid for CHARACTER SET 'utf8mb4'

prueba:

SET NAMES 'utf8mb4' COLLATE 'utf8mb4_bin';

Usando SQLyog Community v12.2.2 (64 bits) y MySQL 5.5.49 puede modificar (abrir) y crear nuevos procedimientos almacenados sin problema.

VERSION()
-----------
5.5.49

SET NAMES 'utf8mb4' COLLATE  'utf8mb4_bin';

SET SESSION collation_connection = 'utf8mb4_bin',
            collation_server = 'utf8mb4_bin',
            collation_database = 'utf8mb4_bin';

SHOW VARIABLES WHERE
    `Variable_Name` != 'character_sets_dir' AND
    (`Variable_Name` LIKE '%CHAR%' OR
    `Variable_Name` LIKE '%COLL%');

Variable_name             Value        
------------------------  -------------
character_set_client      utf8mb4      
character_set_connection  utf8mb4      
character_set_database    utf8mb4      
character_set_filesystem  binary       
character_set_results     utf8mb4      
character_set_server      utf8mb4      
character_set_system      utf8         
collation_connection      utf8mb4_bin  
collation_database        utf8mb4_bin  
collation_server          utf8mb4_bin