Hatena::Groupnextstageone

kimiwadaの日記

 | 

2012-02-13

文字化け&アップデートエラー

15:48

とあるシステムの為に作成したテスト用の管理webサイトがあるのだが、

本番用の管理サイトでエラーが出るというので現象をテスト用で再現しようとしたら

そのエラーに辿り着く前に別のエラーが発生したり管理サイトが文字化けしたり

するので設定をいじってみる事に。

テスト用管理サイトは以下の環境で動作している

      OS Windows XP SP3

データベース Mysql5.5


今回いじった設定ファイルは下記のとおり。

xampphttpd.conf

mysqlのmy.ini

  • 原因
    • 管理サイトで使用する「xampp」と「mysql」の設定ファイルが初期状態のままだったのが原因である。

なので設定を管理サイト用に変更してみることに。

  • 解決方法
    • mysqlを開き、下記の記述で許可することに。
    • alter table テーブル名 modify カラム名 datetime NULL;

  • 問題2:文字化け
    • 以前から文字化けしていたのはわかっていたが、テスト用だしサイト自体の動作には影響ないし、直す時間もなかったので放っておいたが、今回ちょうどいいので直すことにした。

apache再起動xamppのコントロールパネルからでなく、windowsのコントロールパネルの「管理ツール」にある「サービス」からApacheを選択→再起動させる。)

これで大丈夫と思ったらまだ文字化けが直っていなかったので、連動しているmysqlの方を調べてみる。

    • mysqlを開き、使用しているデータベースに入った後に下記のコマンドを入力する。
    • show variables like '%char%';                                                     (show variablesはシステム変数の値を表示させる構文で、今回は文字コードを調べたいので、              Like演算子でcharacter-setの「char」で検索する。)
    • するとcharacter_set_serverのValueが「utf8」になっているので、これを「cp932」という値に変更するために         mysqlのフォルダにあるmy.iniをエディタで開く。
    • my.iniの80行目あたりにある「character-set-server」を「utf8」から「cp932」に変更、上書きし、             mysqlサーバ再起動させる。こちらもApacheと同様の方法で再起動する。

※ちなみにcharacter-set-serverのバージョンは5.5.17

これで文字化けも直り、漸く本題のエラーに取り掛かる事ができる。

satakesatakesatakesatake 2012/02/13 17:51 character-set-serverのバージョンというのは語弊がある表現。
character-set-serverはmysql 5.5から追加された、default-character-setに代わるパラメータといったほうが正確だよ。
参照→http://nextstageone.g.hatena.ne.jp/satakesatake/20120213

ゲスト



トラックバック - http://nextstageone.g.hatena.ne.jp/kimiwada/20120213
 |