人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

MySQL上で文字化けを起こしていますがWEB上では正常に表示されています。phpMyAdminから閲覧する文字化けしていて読めません。
MySQL上のデータのみを文字化けから救う方法はありますか?どんな方法でも構いません。

◆環境
・Linux
・MySQL の文字セット: UTF-8 Unicode (utf8)
・Server : Apache/2.2.14
・MYSQL Version : 5.1.41
・SQL Mode : Not set
・PHP Version : 5.3.1

まず上記環境内容で救出可能か不可能かだけでもご教授頂ければと思います。
また、もっと詳しく環境解れば回答できるよって場合は何を書いたら良いかお願いします。
データベースさえ正常に表示されれば手段や手順は問いません。
よろしくお願いします。

●質問者:
●カテゴリ:コンピュータ インターネット
✍キーワード:Apache Linux MySQL PHP phpMyAdmin
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● うぃんど
●23ポイント ベストアンサー

phpMyAdminでMySQLのデータを表示した時にだけ文字化けが発生するということであれば照合順序の設定を変えるだけで対応可能な話かもしれませんね

文字化けするテーブルをphpMyAdminで開いて、操作メニューのテーブルオプションにて、照合順序をutf8に変更してみてください

以上でうまくいけば良いのですが、論点自体がずれていたりするとこまごま話をしていかなければならなくなるかもしれませんので、

何かと不便な回答欄ではなく「コメント・トラックバックを表示する」にチェックを入れていただいて、以後コメント欄でのやりとりがよいでしょう

◎質問者からの返答

早速試してみます。ほかにも文字化けなしでデータのみ救出する手段はないですかね?文字化けのDumpファイル・Sqlファイルを別のサーバーに入れてインポートするとWEB上では文字化けしていないのにMysqlのデータのみ文字化けしている状態です。


2 ● k-tan2
●23ポイント

phpMyAdminで、表示文字の設定をUTF-8にかえれば治ります。

MYSQLのDB自体は文字化けもしてませんし、問題ありません。

◎質問者からの返答

同様に試してみます。


3 ● =NAOKI=
●22ポイント

phpMyAdminでUTF-8に変えてみてはいかが?


4 ● ほっけみりん
●22ポイント

私も以前仕事で同じような現象に悩まされた記憶があります。

Apacheのデフォルト文字コードをUTF-8にする。

PHPのconfファイルもUTF-8にする。

MySQLはphpMyAdmin上からではなく、my.cnfの設定を確認してください。

[mysqld]と[mysql]の項目に下記の記述

default-character-set = utf8

が、なければMySQL上では文字コードはlatin1で扱われているため2バイト文字は100%文字化けします。

データ(UTF-8)>PHP+Apache(UTF-8)>MySQL(latin1)

結果としてlatin1の文字コードに無理矢理UTF-8の文字列を突っ込んでいるので文字化けます。

最終的にはPHPのプログラムを先輩に組んでもらい無事データを救ったのですが、

残念ながらその資料を無くしてしまいました。

何かのお役に立てればと思い私の時の現象を書かせていただきました。

◎質問者からの返答

さっそく、my.cnfを見ました。default-character-set = utf8 の記述はありませんでした。

この辺をもう少し調べてみます。ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ