• ベストアンサー
  • 困ってます

MySQLの文字化け(?)解消について

こんにちは、MySQLを使ってデータベースの操作をしている初心者です。 開発環境は以下の通りです。 Apache Tomchat 4.1 MySQL server 4.1.7 jdk1.5.0 MySQL Command Line Client 上でテーブルを作成し、select*で表示すると日本語の部分が全て??? や???」???になってしまいます。これってやはり文字化けですか? 過去の投稿から MySQLのフォルダにあったmy.iniに 以下の内容を追加してみましたが結果は 変わりませんでした。 [mysqld] basedir=C:/mysql #bind-address=10.146.133.80 #datadir=C:/mysql/data #language=C:/mysql/share/your language directory #slow query log#= #tmpdir#= #port=3306 #set-variable=key_buffer=16M default-character-set=sjis [WinMySQLadmin] Server=C:/mysql/bin/mysqld-max-nt.exe user=root password=root default-character-set=sjis [mysql] default-character-set=sjis [client] default-character-set=sjis [mysqldump] default-character-set=sjis ちなみにjavaアプリケーションで コマンドプロンプト側からコマンドライン引数 として追加指定した日本語についても全て同じように ????になってしまいます。 (ただコマンドプロンプト上では引数で指定した 値のみ、きれいに日本語で表示されます。) 上記内容を追加した後で何かするべきこと、 もしくは上記内容でおかしなところがあれば 教えてください。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数186
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1

こんにちは。ハズしていたらごめんなさい。 僕もほぼ同じ環境で使っていますが、僕の環境では、server.xmlのResourceParamsタグにおいて、 <ResourceParams name="jdbc/mysystemDB"> <parameter> <name>url</name> <value>jdbc:mysql://localhost/databasename?useUnicode=true&amp;characterEncoding=Windows-31J</value> </ResourceParams> みたいなカンジで設定しています。 ご参考になれば・・・

共感・感謝の気持ちを伝えよう!

質問者からのお礼

MilanoSandAさん アドバイスいただきありがとうございました。 早速試してみます。

関連するQ&A

  • my.iniを書き換えても文字化けが解消されません。

    MySQL5.1をWindowsVistaにインストールし、コマンドプロンプト上で実行しているのですが、日本語の文字化けが解消されません。 自分なりに調べ、下記ののように設定しましたが手詰まりになってしまいましたので、どなたか知恵を貸してください。 my.iniを以下のように変更 [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis [mysqld] default-character-set=sjis character_set_server=sjis skip-character-set-client-handshake 起動時のステータス mysql> status; Server characterset: sjis Db characterset: sjis Client characterset: sjis Conn. characterset: sjis mysql> show variables like "char%"; character_set_client sjis character_set_connection sjis character_set_database sjis character_set_filesystem binary character_set_results sjis character_set_server sjis character_set_system utf8 コマンドプロンプトの文字コード Shift-JIS

  • mysqlの文字化けについてです

    学校でjavaの勉強をしている者です。 初心者です。 学校の宿題をやるために、自宅でmysqlをインストールしたのですが、 javaで実行すると文字化けしてしまいます。 学校では、my.iniの中の [mysql] default-character-set=latin1 を [mysql] default-character-set=sjis と変更し、 [mysqld] default-character-set=latin1 を [mysqld] default-character-set=sjis skip-character-set-client-handshake と変更し、 SQLを再起動すれば解決すると習ったのですが、 文字化けが起こってしまいます。 show variables like '%char%'で文字コードを確認してみたところ、 | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | このように、sjisになっていませんでした。 どうしてなんでしょうか? どなたか解答のほどよろしくお願いします。

  • XAMPP MySQL my.cnfの設定について

    mySQLに日本語のデータを使いたい者です。 XAMPPを利用しています。 コマンドプロンプトからINSERT文などで日本語のデータを入れたいのですが、????になります。 mySQLのバージョンは5.1.30です。 XAMPPは1.7.0 my.cnfをメモ帖でひらき、[default-character-set]と検索してみましたが 何もHITしなかったので、次のようにmy.cnfに書き加えました。 [client] default-character-set=sjis [mysqld] default-character-set=sjis character-set-server = sjis collation-server = utf8_general_ci [mysql] default-character-set=sjis sjisになっているところは一度utf8で試してみたのですが ????ではなく文字化けになったのでsjisにしてみました。 何か設定に不備があるのでしょうか?DOS上でset names 'sjis' などを試してみましたが駄目でした。

    • ベストアンサー
    • MySQL
  • 文字化けが解消できません…MySQL5.2.1

    OS:WINDOWS XP MySQL5.2.1 Apache2.2.4 php-5.2.1 文字(EUC-JP使用) PHPからテーブルにINSERTした場合、echoできちんと表示できます。 しかし、コマンドプロンプトを開いてテーブルを見ると、 PHPからINSERTした日本語が文字化けしています。 コマンドプロンプトにINSERTで日本語を入力すると、 Query OK と表示されますが、SELECT * FROM で内容を表示すると、 空白で何も表示されません(PHPのechoでも表示されません) 色々調べてみたのですが…どうしても解決できません… 【my.ini】 [client] port=3306 default-character-set=ujis [mysql] default-character-set=ujis [mysqld] port=3306 basedir="c:/mysql5/" datadir="c:/mysql5/data/" default-character-set=ujis init-connect="SET NAMES ujis" skip-character-set-client-handshake [mysqldump] default-character-set = ujis 【SHOW VARIABLES で確認した文字コード】 character_set_client ujis character_set_connectioon ujis character_set_database ujis character_set_filesystem binary character_set_results ujis character_set_server ujis character_set_system utf8 試しに mysql> SET NAMES ujis と入力したりしてみましたが 文字化けしたままになっております。 SHOW CREATE DATABASE と SHOW CREATE TABLE で表示された CHARACTER SETは ujis でした。 my.iniの character-set を ujis に設定した場合、 日本を表示させることはできないのでしょうか? よろしくお願い致します。

    • ベストアンサー
    • MySQL
  • PHPでMYSQLのデータを読み込んだ時

    PHPでMYSQLのデータを読み込んで出力した時、日本語の部分だけ、表示されません。 my.iniには、いろいろ調べて、下のように書いてみました。ちなみに、sjisと書いてあるところは、ujisと書き換えたりもしました。 バージョンは、アパッチが2.0.53、PHPが5.0.4、MYSQLは4.0.20dです。 日本語の部分以外は、ちゃんと表示されているので、文字の設定が間違っているのだと思うのですが、 どなたか、分かる方教えてください。 [WinMySQLAdmin] Server=C:/mysql/bin/mysqld-nt.exe [mysqld] default-character-set=sjis language=C:/mysql/share/japanese [mysql] default-character-set=sjis [mysql-dump] default-character-set=sjis

  • 文字化け中。

    mysqlで文字化けします。「十勝平野」や「ソース」が化けます。 webでいろいろと調べてmy.iniをいじくってみましたが、まだ文字化けがなおりません。 mysql> statusは -------------------------------------- Connection id: 7 Current database: Current user: root@localhost SSL: Not in use Server version: 4.0.26-nt Protocol version: 10 Connection: localhost via TCP/IP Server characterset: latin1 Client characterset: sjis TCP port: 3306 ----------------------------------- このような状態です。 my.iniファイルはC:/windowsフォルダの中に置いています。 一部のサイトでは「Windowsでは、インストールディレクトリ等に用意します。」という表現が使われていたのですが、C:/windowsフォルダのことではないのでしょうか? -----------------my.ini--------------------- [mysqld] default-character-set=sjis basedir=C:/server/mysql datadir=C:/server/mysql/data [WinMySQLadmin] Server=C:/server/mysql/bin/mysqld-nt.exe default-character-set=sjis [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis [client] default-character-set=sjis ------------------------------------------ どなたか、よろしくお願いします。m(_ _)m

  • MySQLレコードの文字化けについて

    皆さんの同様の質問内容を全て拝見しましたが、理解できず質問させていただく経緯になりました。 何度も同じ質問掲載で大変申し訳ありません。 ▼現在の環境です。 Linux ES4 Apache2.0 PHP4.4.4 MySQL 4.1.12 2台のサーバで、WEBとDBに分けて構成しております。 WEBサーバのPHPからはDBサーバのMySQLへ接続可能となり、データも表示されます。 今回問題になっていいるのは、DBサーバ上のLinuxのGNOME端末ツールから接続し、DML文(INSERT)をした際に、日本語の値が化けて格納されてしまう症状に陥っております。 英語の値は問題なくWEB上に表示されております。日本語の値はWEB上では化けて表示されております。DB上の値が化けて格納されたためと思っております。 ▼WEBサーバ側のPHP.iniです。 mbstring_language=Japanese mbstring_internal_encoding=EUC-JP mbstring_http_input=auto mbstring_http_output=pass mbstring_encoding_translation=on mbstring_detect_order=auto mbstring_substitute_character=none ▼DBサーバ側のmy.cnfです。 [mysql] default-character-set=sjis [mysqld] default-character-set=sjis [client] default-character-set=sjis [mysqldump] default-character-set=sjis ▼SHOW VARIABLES LIKE 'char%';を実行した結果 character_set_client sjis character_set_connection sjis character_set_database ujis character_set_results sjis character_set_server sjis character_set_system utf8 同じような質問で大変申し訳ありませんが、どなたか御教授願えませんでしょうか。よろしく御願いいたします。

    • ベストアンサー
    • MySQL
  • MySQLから送られて来たデータの文字化け

    いつもお世話になっています。 今回、phpでmysqlに接続したのですが、mysqlから引っ張ってきたデータが文字化けして困っています。(日本語のみ文字化け) 使っている環境は以下の通りです。 IIS6.0 PHP 5.0.4 MySQL 4.1.22 IISは、CGI、ASP、ISAPIを許可にしています。(.phpを見れるようになっています。) php.iniのmbstringの設定は以下のようになっています。 1105 mbstring.language=Japanes 1110 mbstring.internal_encoding = EUC-JP 1113 mbstring.http_input = auto 1117 mbstring.http_output = SJIS 1124 mbstring.encofing__translation = On 1128 mbstring.detect_order = auto 1132 mbstring.substitute_charecter = auto 1133 mbstring.script_encoding = EUC-JP my.iniの設定は以下のようになっています。 [mysql] default-character-set=sjis [mysqld] default-character-set=sjis skip-character-set-client-handshake mysqlでコマンドで確認したところ以下のような文字設定になっています。 mysql> show variables like "char%"; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | sjis | | character_set_connection | sjis | | character_set_database | sjis | | character_set_results | sjis | | character_set_server | sjis | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ character_set_systemがutf-8になっているのが気がかりですが、 こんな感じで設定しています。 mysql内では文字化けしていないのに、 phpで呼び出した時に文字化けするのでしょうか? どなたかご教授よろしくお願いします。

    • ベストアンサー
    • PHP
  • xampp mysql5.0.51の文字化けについて

    mysqlの日本語文字が文字化けし、いろいろ試みてみましたが解決せず 途方に暮れております。 まだ勉強しはじめの超初心者でしてあれこれネットなどで調べて 2週間になりますが解決せず困っています。 どなたか解決方法をご存知でしたらぜひご教授ください。 環境は以下のとおりとなっております。 ・ローカルpc→windowsXP ・xampp1.6.6をインストールし、mysql5.0.51を使用中 mysqlのテーブル内の日本語が文字化けし、 いろんなサイトを参考にしながら見よう見まねで 以下のように設定してみました。 1)コマンドプロンプトで  set character set cp932; と入力 2)my.cnfというファイルに以下内容を追加 [client] default-character-set = utf8 [mysqld] skip-character-set-client-handshake default-character-set = utf8 character-set-server = utf8 collation-server = utf8_general_ci init-connect = SET NAMES utf8 [mysqldump] default-character-set = utf8 [mysql] default-character-set = utf8 3) 1)、2)でも解決されなかったため 2)の内容でutf8のところをsjisに変えて再度保存 というような設定を行いました。 このように設定しても文字化けが解消しないどころか、 このように変えてから今度はxamppコントロールパネルのmysqlが 起動しなくなってしまいました。 正確には開始ボタンを押すとmysql起動とは表示されるのですが 開始ボタンが開始のままになってしまいます。 mysqlを使用している知人にこの問題について聞いてみたところ mysql5.0~の最新バージョンは不安定なので使わないほうがいいとのことですが、本当なのでしょうか? もし解決方法がないのであれば安定バージョンでインストール し直したいと思っているのですが、 どのバージョンだと比較的安定しているのでしょうか? 併せてご回答いただけるとたいへん助かります。 本当に初心者の質問で恐縮ですが、よろしくお願いします。

    • ベストアンサー
    • MySQL
  • MYSQLから抽出したクエリの結果が文字化けします。

    PHPの文字化けの件でお伺いしたいのですが サーバーOS:FreeBSD PHP4.3.11とMYSQL4. 1. 11を利用してWEBアプリを作成しよう としております。 文字化け対策として、my.confに以下の文を追加しました。 [client] default-character-set= sjis [mysqld] default-character-set= sjis character-set-server = sjis [mysqldump] default-character-set= sjis [mysql] default-character-set= sjis mysql再起動後、telnetにて、データベースの内容を 確認したところShiftJISの文字コードでで無事に確認できました。 そこでPHPからこのデータを抽出しようと考え select * from table where column=12345 のような形で日本語のデータをPHPで表示させようとしましたが 日本語のデータのところが????と表示されてしまいうまく表示させることが 出来ません。ここでhttpd.conf に AddCharset SJIS .sjis と追加してしても症状が改善されません。 php.iniを編集すればうまくいくのかと考え、php.iniを確認したところ [mbstring] ;mbstring.internal_encoding = EUC-JP ;mbstring.http_input = auto ;mbstring.http_output = SJIS ;mbstring.detect_order = auto ;mbstring.substitute_character = none; PHPとMYSQLと双方に原因が考えられますが、telnet上ではきれいに 表示されることを考えPHPの項目にてお伺いいたしました。 となっておりました。他に何か原因やチェックしなければいけないところ 等ございましたらご教授ください。 よろしくお願いいたします。

    • ベストアンサー
    • PHP