MariaDB のサポートの改善
Laravel 11 には、MariaDB のサポートが改善されました。以前の Laravel リリースでは、Laravel の MySQL ドライバー経由で MariaDB を使用できました。ただし、Laravel 11 には、このデータベース システムにより良いデフォルトを提供する専用の MariaDB ドライバーが含まれています。
Laravel のデータベースドライバーの詳細については、データベースのドキュメントを参照してください。
Laravel 11 では、専用の構成オプションを導入し、推奨される照合順序を採用することで、MariaDB との互換性を強化しています。
主な変更点:
個別の構成: MariaDB には、MySQL とは別に、カスタマイズされた設定のための独自の構成セクションが追加されました。
照合順序の更新:
MySQL のデフォルトの照合順序はutf8mb4_0900_ai_ci
です.
MariaDB のデフォルトの照合順序は utf8mb4_uca1400_ai_ci
になりました。
テスト: MariaDB 構成は、一貫性を確保するために、特に MariaDB データベースに対してテストされています。
utf8mb4_uca1400_ai_ciとは?
utf8mb4_0900_ai_ci
とutf8mb4_uca1400_ai_ci
は、MySQLで使用される文字セットと照合順序の違いを表しています。
-
utf8mb4_0900_ai_ci
はMySQL 8.0.0で導入された照合順序です。この照合順序はUnicode Collation Algorithm 9.0.0(UCA 9.0.0)を使用します。UCA 9.0.0は、Unicode 9.0.0に基づいており、古いバージョンよりも多くの文字や言語をサポートしています。この照合順序は、より正確な文字列比較を可能にし、多言語サポートを向上させます。 -
utf8mb4_uca1400_ai_ci
は、MariaDBで導入された照合順序です。これはUnicode Collation Algorithm 14.0.0(UCA 14.0.0)を使用しており、Unicode 14.0.0に基づいています。新しいUnicodeバージョンに基づいており、より最新の文字や言語をサポートしています。そのため、utf8mb4_uca1400_ai_ci
はより正確な文字列比較や多言語サポートを提供します。
つまり、utf8mb4_uca1400_ai_ci
はより新しいUnicode仕様に基づいており、utf8mb4_0900_ai_ci
よりもさらに多くの文字や言語をサポートしています。したがって、新しいプロジェクトや環境では、可能であればutf8mb4_uca1400_ai_ci
を使用することが推奨されます。
ちなみに、MySQLもMariaDBも開発者の娘さんの名前で姉妹DBみたいらしいですね~大人になるとやはり性格とか変わるから照合順序も変わるのもわかりますね
MySQLでは使えないけどMariaDBで使える文字?