【MariaDB・備忘】文字コードが揃ってなくて文字化けがひどい

スポンサーリンク
広告

ひどいも何も、文字化けしてるかしてないかは二択ですが・・・。

これに大変苦しめられたので、備忘で記しておきます。

 

まず、文字化けしてる! ことが発覚したら、文字コードを確認します。

 

show variables like "chara%";

これで、どこがutf8じゃないか? を確認します。

(だいたい、Latinとかになってるようです)

 

f:id:TACOSVilledge:20170226195104p:plain

こんな感じ。

MariaDBでは、サーバー、データベース、テーブル、カラムなどにそれぞれ文字コードを設定できるのだそうな。

 

それぞれを、設定ファイル(iniやcnf)で指定することもできるそうだが、

簡単なのは、コマンドで変える方ですよね。

 

  1. データベースの文字コードを設定する

データベースの文字コードを設定するときの方法を以下に記しておきます。

データベースを作った後だと、alter文で変えることもできるようです。

ですが、create databaseするときに

create database データベース名 default character set = utf8;

 

で設定できるようです。

また先ほどの、show variables like "chara%"で確認しましょう。

 

 2. サーバーの文字コードを変えたい場合

また、serverの文字コードを変えたい場合は、

 

mysql > set character_set_server = utf8;

 

の一文で変わるそうです。

めちゃ苦しめられた帰結がこれって、ため息が長くでたあとに、すっとしました。

 

主に同じことに苦しめられる可能性のある未来の自分への参考まで。