1. 问题

  开启了瀚高的大小写敏感设置之后 SHOW case_sensitive_db;

  为on的情况下,表名是小写的情况下会提示表不存在,而将表名改成大写之后,camunda又会尝试自动创建表,但是因为表已存在导致创建失败。

2. 解决

1) 只改自己的业务库不会影响其他的库
alter  database dbnamexxx  set lower_case_table_names=1;
select pg_reload_conf(); --生效
2) 全局修改,会影响所有的库
alter system set lower_case_table_names=1;
select pg_reload_conf();  --生效

3. 参数意义:

1) compatible_db
使用兼容功能前请先设置参数 compatible_db。该参数的可取值为 none、oracle 、mysql 。
默认为“none”,表示关闭兼容模式;
设置为“oracle”表示开启oracle兼容模式,适用于源库是oracle的场合;
设置为“mysql”表示开启mysql兼容模式,适用于源库是mysql的场合。
设置方式有两种,一种是永久生效,一种是临时生效。
2) case_sensitive_db
开启之后,大小写敏感。该参数的可取值为 on、off,默认为off。
3) lower_case_table_names

表名大小写控制参数。该参数的可取值为 0、1、2,默认值为0。 1是表名转小写(不敏感),2和0一样都是大、小、混合写敏感。要与参数1和参数2结合使用。重载生效。

4. 查询参数

-- 查看兼容模式
show compatible_db;
-- 查看大小写敏感
show case_sensitive_db;
-- 查看表名大小写
show lower_case_table_names;

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐