概要
MariaDB/MySQLのサーバー設定の文字コードと照合順のデフォルトはそれぞれ以下になっています (Server System Variables – MariaDB Knowledge Base)。
- character-set-server = latin1
- collation_server = latin1_swedish_ci
パッケージマネージャーなどでインストールすると、上記はutf8mb4/utf8mb4_general_ciになったりしてたりします。
この設定は使用する文字や、SQLでのソートなどで重要な意味があります。
そして、この文字コードと照合順はDB単位でも設定が可能です。つまり、管理者権限の使えない共用サーバー・レンタルサーバーでも設定可能です。
今回は詳細の解説を省略しますが、基本的には常にutf8mb4/utf8mb4_binを使ったほうがよいです。utf8mb4_general_ciは英字の大小を区別しませんが、utf8mb4_binは区別するからです。
毎回MySQL/MariaDBのDB設定時にこの設定が必要になり、個別に説明するのが冗長になるため、この記事で設定と確認方法を記載しておいて、この投稿を参照するようにします。
設定
指定したDBの文字コード・照合順の情報は以下のコマンド・SQLで確認可能です。
詳細プロフィール。SNS: X Twitter/GS=gnusocialjp@gnusocial.jp/WP=gnusocialjp@web.gnusocial.jp。2022-07-17からgnusocial.jpとweb.gnusocial.jpのサイトを運営しています。WordPressで分散SNSに参加しています。このアカウントの投稿に返信すると、サイトのコメント欄にも反映されます。
Comments