2015-10-07 1 views
0

J'essaie de convertir le jeu de caractères d'une colonne TEXT dans une énorme base de données de production de utf8 à utf8mb4 pour soutenir emojis.Est-il sécuritaire de convertir le jeu de caractères d'une colonne TEXT de utf8 à utf8mb4 dans mysql?

J'ai lu que pour les colonnes varchar, nous devons calculer et fournir une taille différente dans la commande alter. Mais je n'ai rien trouvé à propos des colonnes TEXT.

Les colonnes TEXT sont stockées à l'extérieur de la table, donc est-ce que je peux aller de l'avant avec la commande alter ou y a-t-il quelque chose à considérer?

Répondre

1

Pas de problème.

La « taille différente » peut se rapporter à l'évolution VARCHAR(255)-VARCHAR(191) pour se loger dans le 767 octets limite pour les index. Ce n'est pas pertinent pour TEXT.

Comment envisagez-vous de faire la conversion? Je pense (mais je n'ai pas testé) cela fonctionnera:

ALTER TABLE tbl CONVERT TO CHARACTER SET utf8mb4;