MySQL5.0の文字コードが変更できずに困っています

このQ&Aのポイント
  • MySQL5.0の文字コードが変更できずに困っています。環境は全てWindowsXPのローカルで動かしています。
  • インストール直後、statusコマンドで確認したところ、Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1となっていました。
  • MySQL5.0の文字コードを変更する方法がわかりません。どなたかご教示お願いします。
回答を見る
  • ベストアンサー

MySQL5.0の文字コードが変更できずに困っています。

MySQL5.0の文字コードが変更できずに困っています。 環境は全てWindowsXPのローカルで動かしています。 インストール直後、statusコマンドで確認したところ、 Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 となっていました。 次に、C:\Program Files\MySQL\MySQL Server 5.0内のmy.iniを [client] default-character-set=sjis [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis [mysqld] default-character-set=sjis としてMySQLを再起動してみたのですが、 Server characterset: latin1 Db characterset: latin1 Client characterset: sjis Conn. characterset: sjis で、ServerとDbが変わらず、このままではINSERT文などで日本語をいれることが出来ません。 どなたかご教示お願いします。

  • MySQL
  • 回答数2
  • ありがとう数1

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

  • ベストアンサー
  • tom11
  • ベストアンサー率53% (134/251)
回答No.1

こんにちは、 文字コードセットは、my.iniのファイルを、直接編集しなくとも 変更できます。 スタート → MySQL → MySQL server 5.0 → MySQL server instance config wizard を実行すると、 MySQLのコンフィグウィザードが実行します。 next を押していくと その中のページに、 please select the default character setのページがあるので、 ここの、一番下の、 Manual Selected default character set / Collation ここで、sjisを選んで、このウィザードを次々に進めて、 完了させると、 MySQLは、sjisに設定できるようです。 参照URLは、インストール時からの、設定のページですが、 途中から、コンフィグウィザードになっているので、 参考になると思います。

参考URL:
http://www.dbonline.jp/mysqlinstall/install/index2.html
sattakah_goo
質問者

お礼

回答ありがとうございます! 言われたとおりのやり方で成功しました。 やっと解決です。 ただ、このウィザード以外のやり方も知りたい所ですが… 今後はLinuxを入れる予定もあるので、文字コードには悩まされることはなさそうですが。 助かりました!

その他の回答 (1)

回答No.2

下記の構成ファイルが存在すると、そちらが優先されてしまいます。 (1)c:\windows\my.ini (2)c:\my.cnf →cnfは非表示 もし存在するなら、指定を合わせるか削除してください。

sattakah_goo
質問者

補足

どちらにもないです。 c:\windowsにmy.iniを入れたりしてみましたが、 なにも変わりませんでした。

関連するQ&A

  • MySQLの文字コード変換

    XAMPP 1.7.1をダウンロードしてMySQL5.1.33をいじってるんですが defaultの文字コードをlatin1からutf8への変更がどうしてもできません。 \XAMPP\mysql\binにあるmy.iniに以下の記述をしました。 [client] default-character-set=utf8 [mysqld] default-character-set=utf8 skip-character-set-client-handshake [mysqldump] default-character-set=utf8 [mysql] default-character-set=utf8 ネットで調べると以上の方法で解決できるとなっていたんですが記述後、再起動してstatusをしてもServer characterset,Db characterset,Client characterset,Conn. charactersetすべてlatin1のままです。 どなたか解決できる方がいましたら是非ともご教授ねがいます。

    • ベストアンサー
    • MySQL
  • my.ini 内を変更しても文字化けがなおらない

    my.ini 内の [mysql]、[mysqld]、[mysqldump] の部分を変更したのですが、文字化けが直りません。 文字化けします。 対応:my.ini 内の [mysql]、[mysqld]、[mysqldump] の部分 ↓ [mysqld] default-character-set=utf8 skip-character-set-client-handshake [mysqldump] default-character-set=utf8 [mysql] default-character-set=utf8 に変更しましたが コマンドプロンプトで mysqlに接続後、statusと打ち込んで状態を確認しても Client characterset:latin1 Server characterset:latin1 となったままです。 とうすればよろしいでしょうか? 何卒よろしくお願い致します。

  • ODBC接続で全角文字が文字化け

    MySQL⇒MS-ACCESSのODBC接続で文字化けが発生してます。 ■MySQL 5.0.27 ■MyODBC 3.51.19 ■MS-ACCESS 2000 (Windows2000) ○my.cnfの設定 [mysqld] skip-character-set-client-handshake [mysqld_safe] skip-character-set-client-handshake [ODBC] default-character-set=sjis [client] default-character-set=sjis ○status Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 ▽試したこと ・Initial Statement に set names 'sjis' を設定 ・Character Set sjis、ujis、latin1 それぞれを指定 半角文字は大丈夫ですが、全角文字になると「??????????」と表示されています。 MySQL+PHPでは問題なく使えます。 解決方法分かる方アドバイスお願い致します。

    • ベストアンサー
    • MySQL
  • mysqlの文字コードの変更方法について教えてください。

    /etc/my.cnfの[mysqld]と[mysql]にdefault-character-set = utf8を 追記したのですが、statusで確認すると Server characterset: latin1 Db characterset: latin1 Client characterset: utf8 Conn. characterset: utf8 とサーバー側の文字コードが変更できていません。 ネットや本で調べてみたのですがわからず、困っております。 どなたか分かる方よろしくお願いいたします。

  • 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

  • sjisを使いたい!

    Linux(RedHat9)上のMySQL(ver 4.1.7)でsjisを使いたいのに使えなくて困っています。MySQLは標準でlatin1に指定されているので、日本語を用いたいため、sjisに変えようと思いました。よって、my.cnfの[mysqld]、[mysqldump]、[mysql]それぞれにdefault character set=sjisと記述したのですが、そうするとMySQLが起動できなくなりました。何故かと思い、上記の記述をやめて幾つか調べました。とりあえずmysql> status;では Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 そしてmysql> show character set;をしてみると、 Charsetの中に、ujisもsjisも入っていませんでした。よって、このMySQLがサポートしていないsjisを設定ファイルに記述しても起動できなくなる訳です。 他のどのPCのMySQLにもsjisなどは当たり前のように入って いるのに・・。 mysql> set character set sjis;や mysql> set names sjis;とやっても、以下のエラー。 ERROR 1115 (42000): Unknown character set: 'sjis' このMySQLの状態を調べるため、mysql> show variables ike 'char%';とすると、 Variable_name | Value character_set_client | latin1 character_set_connection | latin1 character_set_database | latin1 character_set_results | latin1 character_set_server | latin1 character_set_system | utf8 character_sets_dir | /usr/local/mysql/share/mysql/charsets/ となっています。このような状況で、どうやったらこの MySQLはsjisを使えることができるようになるでしょうか。 どなたかお気づきの点でもあればアドバイスよろしくお願いします。m(_ _)m

    • ベストアンサー
    • MySQL
  • 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になっていませんでした。 どうしてなんでしょうか? どなたか解答のほどよろしくお願いします。

  • 文字化け中。

    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

  • phpMyadminの文字化けについて

    PHPでINSERTしたものをphpMyadminで確認すると 日本語が文字化けしています。 コマンドプロンプトでテーブルを見てみると文字化けは起こっていません。どこを変えればいいのでしょうか? いろんなサイトを参考にmy.iniを直してみてもだめでした。 ----- my.ini ------ [mysqld] default-character-set = utf8 skip-character-set-client-handshake character-set-server = utf8 collation-server = utf8_general_ci init-connect = SET NAMES utf8 skip-character-set-client-handshake [mysqldump] quick max_allowed_packet = 16M default-character-set = utf8 [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates default-character-set = utf8 ----- phpMyadmin ----- テーブルの照合順序 utf8_general_ci mysql> \s Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 バージョンは以下のとおりです。 XAMPP 1.7.1 MySQL 5.1.33 PHP 5.2.9 phpMyadmin

    • ベストアンサー
    • MySQL
  • MySQLの文字コードが変更されない

    お世話になっています。 EUCでPHPを書いています。 DBから取ったデータが文字化けしてしまいます。 全ての文字コードをujisにしたいのですが、変更できず困っています。 現在は以下のようになっています。 ――――――――――――――――――――――――――――――――――――― ■環境 Windows7(64bit) Mysql 5.5 ――――――――――――――――――――――――――――――――――――― ■my.iniのパス C:\ProgramData\MySQL\MySQL Server 5.5\my.ini ――――――――――――――――――――――――――――――――――――― ■サービスの起動パス "C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.5\my.ini" MySQL55 (my.iniでポート変えたらCLIから接続できなくなったので、設定は反映していると思います。) ――――――――――――――――――――――――――――――――――――― ■my.ini [client] port=3306 default-character-set=ujis [mysql] default-character-set=ujis [mysqld] port=3306 character-set-server=ujis init-connect=SET NAMES ujis skip-character-set-client-handshake default-character-set=ujis default-storage-engine=INNODB sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" max_connections=100 query_cache_size=0 table_cache=256 tmp_table_size=10M thread_cache_size=8 myisam_max_sort_file_size=100G myisam_sort_buffer_size=69M key_buffer_size=55M read_buffer_size=64K read_rnd_buffer_size=256K sort_buffer_size=256K innodb_additional_mem_pool_size=3M innodb_flush_log_at_trx_commit=1 innodb_log_buffer_size=2M innodb_buffer_pool_size=107M innodb_log_file_size=54M innodb_thread_concurrency=10 [mysqldump] default-character-set=ujis skip-opt create-options set-charset hex-blob single-transaction ――――――――――――――――――――――――――――――――――――― ■コマンドラインからの確認 mysql> status; --------------------------------- Server characterset: utf8 Db characterset: utf8 Client characterset: ujis Conn. characterset: ujis ――――――――――――――――――――――――――――――――――――― 何かヒントを頂けないでしょうか。