2008年11月20日

[mysql 14696] Re: UTF-8環境の文字化けに関して

tuchidaです。

お世話になっております。

今井さんの御指摘のStatusですが

mysql Ver 14.7 Distrib 4.1.13, for suse-linux (i686) using readline 5.0

Connection id: 171
Current database: v55Ancate
Current user: root@xxxxx
SSL: Not in use
Current pager: less
Using outfile: ''
Using delimiter: ;
Server version: 4.1.13
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /var/lib/mysql/mysql.sock
Uptime: 27 days 1 hour 35 min 48 sec

となっています。
特に
「Server characterset」と「Db Characterset」が私も気になるのですが
my.cnfの指定がわかりません。

「Server characterset」は
「mysqld」デビジョンで
character-set-server = utf8
と指定すればよいのでしょうか?

>
> はじめまして今井です。
>
> 根本的に、MySQL が UTF-8 の設定を正常に認識しているのかが気になります。
>
> status コマンドで出力される結果に
>
> Server characterset: utf8
> Db characterset: utf8
> Client characterset: utf8
> Conn. characterset: utf8
>
> と出力されていますか?
> PHP のサーバーと MySQL のサーバーが1台で構成されている
> オールインワン構成であればそのまま、複数台構成であれば
> DB(MySQL) サーバーおよび WEB(PHP) サーバーから
> DB に接続して status コマンドを実行してみてください。
> DB サーバーでは問題ないが、クライアントサーバーから接続したら
> 文字コードが latin1 になってしまう等の現象もありますので。
>
> また、my.cnf の mysqld 項に
> skip-character-set-client-handshake
> も記述してみてください。
>
>
> Tuchida さんは書きました:
> > tuchidaです。
> >
> > 先ほどのINSERT文が成功したのですが、これはコマンドラインで
> > 行ったときも同じですが漢字の文字化けが発生しています。
> > 条件としては以下の通りです。
> >
> > 1.Mysqlのバージョンは4.1.13で、phpは4.4.0です。
> >
> > 2.OSは SUSELinux10.0 内部コードはUTF-8です
> >
> > 3.my.cnfで
> > [safe_mysqld]、[mysql_dump]、[mysql]セクションで
> > default-character-set = utf8
> > と指定しています。
> >
> > 4.元になっているデータはWebからの漢字データです。
> >
> >
> >
> >
>
>
>
>
> __________ ESET Smart Security からの情報, ウイルス定義データベースのバー
ジョン 3626 (20081119) __________
>
> このメッセージは ESET Smart Security によって検査済みです。
>
> http://canon-its.jp
>
>

投稿者 xml-rpc : 2008年11月20日 16:11
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/79247
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。