OSによってファイル名の大文字小文字の扱いがと異なる。 たとえばLinuxは、大文字と小文字を明確に区別する。abcとAbcは別のファイルとして扱われる。 一方Windowsは、大文字と小文字を区別してファイル名を保持するが、abcとAbcは同じファイルとして扱われる。 MySQLのデータベース名やテーブル名の認識は、初期状態でOSのファイル名の扱いに準拠する設定となっている。 システム変数 lower_case_table_names に 0~2 の値を設定する。
Linuxは標準で0、windowsは1、が設定されている。そのためOSの異なるMySQL間で移行する場合は注意が必要である。 設定は、my.cnf (linux) / my.ini (windows) に下記のように記載する。
lower_case_table_names = 1 変更後はサービスを再起動する。 |
備忘録 >