终端显示多种语言

终端显示多种语言

在工作中,我需要连接到数据库,这些数据库包含保存中文、俄语、西班牙语、日语等字符的字段。当我在终端中拉取它们时,我得到的是问号。我知道有一种方法可以显示实际的字符而不是问号,但是怎么做呢?

:~$ locale在远程结果上:

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在 clint 上导致:

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=

答案1

检查locale服务器端是否使用 UTF-8 或更改区域改为 UTF-8。然后配置你的 SSH 客户端使用 UTF-8(而不是 ISO-8859-1)。例如,如果使用 Putty,我们必须设置 Putty 的字符集:

Putty:窗口->翻译->远程字符集:UTF-8

在此处输入图片描述

否则,它将使用 ISO-8859-1。Mac 问题已解决

或者,在连接到 mysql 数据库时运行此命令将从 mysql 查询输出 UTF-8 字符。

set character_set_results=utf8, character_set_client=utf8, character_set_connection=utf8;

相关内容