Au travail, je dois me connecter à des bases de données, et ces bases de données contiennent des champs contenant des caractères chinois, russes, espagnols, japonais, etc. Lorsque je les tire dans mon terminal, j'obtiens des points d'interrogation. Je sais qu'il existe un moyen d'afficher les personnages réels au lieu de points d'interrogation, mais comment?
:~$ locale
sur la télécommande entraîne:
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
:~$ locale
sur le clint se traduit par:
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
Vérifiez locale
pour vous assurer que le côté serveur utilise UTF-8 ou change locale en UTF-8. Configurez ensuite votre client SSH pour utiliser UTF-8 (pas ISO-8859-1). Par exemple, si vous utilisez PuTTY, nous devons définir le jeu de caractères de PuTTY:
PuTTY: Fenêtre-> Traduction-> Jeu de caractères distant: UTF-8
Sinon, il utilisera ISO-8859-1. A problème Mac résol .
Alternativement, l'exécution de cette commande en étant connecté à une base de données mysql produira des caractères UTF-8 à partir des requêtes mysql.
set character_set_results=utf8, character_set_client=utf8, character_set_connection=utf8;