2016-05-31 6 views
1

これはWindowsのcmd:mysql -u mydb -h myip -pでデータベースに接続する方法です。私のデータベースからutf8mb4文字をWindows上でcmdで見ることができません

私のutf8データベースをutf8mb4に交換しようとして以来、これはいつもうまくいっています。私はphpやjavaでうまく動作する変更を適用し、php、java、またはphpmyadminからロードするときには正しく表示されますが、cmdでは正しく表示されません。

私は--default-character-set=utf8--default-character-set=utf8mb4をcmd接続に追加しようとしましたが成功しませんでした。ところで、私がSELECT '☺';のような単純な文章を実行すると、その文字が正しく表示されることが不思議です。

何か不足していますか?

+0

chcpコマンドを試しましたか?次のスレッドでは、cmd.exeをこのコマンドでunicodeを実行するように設定していました。私もutf8mb4を達成するためにこれを試してみます:http://stackoverflow.com/questions/14109024/how-to-make-unicode-charset-in-cmd-exe-by-default –

+0

ちょうどそれを試したと同じ事が起こる。それは '?'と表示される '?'を表示します – danibg

+0

あなたはどのように試しましたか教えてもらえますか? –

答えて

1

ブレインストーミングセッションの終わりにdanibgの所見に基づいて、linkが見つかりました。これは5.5に適用されたMySQLバグであり、

私たちは5.5バージョンのサーバーに対して、特にANSI以外の文字に関しては のクライアントをテストしました。 5.6クライアントは期待通りに を処理し、このバグで説明した問題も修正されました。その結果、

次のように、解決策は以下のとおりです。

  • は、バックアップを作成し、
  • アンインストールのMySQL 5.5
  • 少なくとも2つのコピーは、MySQL 5.6+
  • は、コピーをインポートインストール保管
  • 多くのテストを行う
+0

現時点では、MySQL 6.0は存在しません。しかし、5.6以上のバージョンをインストールすると、このトリックを行う必要があります。ありがとう、あなたは何か間違っていたかを見つけるために私を助けてくれます。 – danibg

+0

@danibg、あなたは完全に正しいです、誤って入力ミス、それを修正するために私の答えを編集しました。 –

関連する問題