Learning site for website creation

MySQLの文字コード変更が反映されない時の確認

  • 投稿日:2019年09月25日

「my.ini」ファイルを編集することができない

MySQLをCドライブのProgram Fileフォルダ内にインストールした場合「my.ini」ファイルを直接編集できないことがあります。

また編集できても保存できないことがあります。

※設定ファイルを変更する場合は必ず変更前ファイルのバックアップを取っておく

対処法

  1. デスクトップなどに「my.ini」ファイルをコピー
  2. デスクトップなどにコピーした「my.ini」ファイルを編集・保存
  3. その後、CドライブのProgram Fileフォルダ内の元の場所に戻します。アラートがでるのでOKを押して上書きします。

遭遇したレアなバグ

  1. TeraPadでCドライブのProgram Fileフォルダ内の「my.ini」ファイルを直接編集し文字コードを変更
  2. 保存後ファイルを閉じる
  3. 再度「my.ini」ファイルをTeraPadで開くと文字コードを変更後の内容が表示される
  4. メモ帳で「my.ini」ファイルを開くとTeraPadの表示内容とは違い、変更前の文字コードのままになっている。

TeraPadだけで確認していると文字コード変更後の内容が表示されるので原因究明に時間がかかった。おかしな挙動をしているときはメモ帳でも確認してみる。

尚、別のPCではこの現象が起きなかったので、たぶんTeraPadのバグかと思われる。

デスクトップなどにコピーして編集後、戻せば問題なく変更された。

「my.ini」ファイルを変更したのにMySQLの文字コードが変わらない

「my.ini」ファイルを編集してMySQLの文字コードを変更したのに「SHOW VARIABLES LIKE 'char%';」で文字コードを確認しても変更されていないことがあります。

可能性は2つ

  • 文字コード変更後、サービスから「MySQL」を再起動していない
  • 文字コード変更後、コマンドプロンプトを開きなおしていない

対処法

「my.ini」ファイルで文字コードを変更後、サービスからMySQLを再起動させる

「Windowsキー」を押して「サービス」と入力して表示される「サービス」を選択

「MySQL」を選択して「サービスの再起動」をクリック

コマンドプロンプトを開きなおす

  1. コマンドプロンプトを閉じる
  2. コマンドプロンプトを開きなおしてMySQLへログイン