utf8 hebraico no console mysql no debian (via putty no windows)

0

Eu tenho um servidor my sql rodando em um linux debian hospedado no linode.com alguns dos meus dados têm caracteres hebraicos.

Estou conectando ao servidor via putty ssh no windows 7. quando eu executo o sql admin console (mysql) e executo uma query selecionada, todos os caracteres hebraicos são exibidos como '?'.

Eu nem tenho certeza onde está o problema, mas eu acho que é o console do mysql ou putty que está perdendo o hebraico.

os dados em si são o.k. (Eu sei disso porque também é acessado através de uma página da web onde ele é exibido muito bem).

alguma idéia sobre o que devo fazer para habilitar hebraico para este cenário?

Obrigado.

    
por epeleg 08.03.2011 / 13:35

1 resposta

0

As codificações de caracteres são um pouco changeling, pode ser que seus dados (que, afinal, são todos apenas binários).

Você deve primeiro verificar a codificação de seu banco de dados e a codificação individual da tabela. A codificação refere-se ao armazenamento interno ... um bom exemplo pode ser que você está armazenando ISO-8859-1 para que o banco de dados espere apenas ISO-8859-1 , mas se alguns dos dados estiverem em hebraico, esses caracteres não serão valid in ISO-8859-1 .. mas se os clientes colocarem os dados e retirarem-se usando ISO-8859-8 (hebraico), a maioria parecerá funcionar.

Aqui é um guia do MySQL sobre o assunto.

Eu recomendaria (sempre que possível) que você use UTF-8, há vários motivos, mas, por favor, não altere cegamente a codificação de seus bancos de dados, pois isso não recodifica os dados, mas simplesmente informa o MySQL que deve ser tratado como UTF8. (O que corromperá seus dados, se a fonte for ISO-8859-1 ou ISO-8859-8. aqui é outro um manual sobre codificações de caracteres, e você estaria bem servido para dar uma vez. "O mínimo possível qualquer software engenheiro deve saber sobre Unicode "

Além disso, seu terminal (sua sessão bash), emulador de terminal (putty) e console db (mysql) têm que saber com qual codificação eles estão lidando… é melhor dizer a eles UTF-8… e então trabalhar com Dados UTF-8.

    
por 08.03.2011 / 13:58