org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [BC_TEST]

异常

org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [BC_TEST]

产生场景

将本地windows的mysql数据库数据迁到服务器上面,项目启动时。

产生原因

hibernate 表名大小写,windows 的 mysql表名忽略大小写,linux 的 mysql表名区分大小写

查看大小写区分

mysql> show variables like “%case%”;
±-----------------------±------+
| Variable_name | Value |
±-----------------------±------+
| lower_case_file_system | OFF |
| lower_case_table_names | 0 | //0区分 1不区分
±-----------------------±------+
2 rows in set

解决办法

LINUX下的MYSQL默认是要区分表名大小写的。
  让MYSQL不区分表名大小写的方法其实很简单:
  1.用ROOT登录,修改/etc/my.cnf
  2.在[mysqld]下加入一行:lower_case_table_names=1
  3.重新启动数据库即可 #service mysql restart 重启即可解决
org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [BC_TEST]

org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [BC_TEST]