问题
Confluence在使用数据库Mysql的时候,特别是在安装时进行数据库连接,页面会报“Confluence fails to start and throws 'MySQL session isolation level 'REPEATABLE-READ' is no longer supported' error”错误
原因
数据运行在错误 的示例管理中 transaction isolation level. Confluence强制要求使用全局的事事管理级别“READ-COMMITTED”.新安装Confluenc的时候会自动侦测是否采用了正确的事务级别层级,但是在进行Confluence升级的时候,它需要的手工的进行处理.
解决方案
会如下下几个方法来解决此错误:
在数据库中设置全局事务会话隔离层级“READ-COMMITTED”
我们可以通过配置MySQL的服务设置来进行处理,需要打开
my.cnf
文件进行修改,此文件中需要在[mysqld]信息段中增加或者修改如下参数
:[mysqld] ... transaction-isolation=READ-COMMITTED ...
在Confluence设置事务会话隔离层级
对于已经存在的Confluence实例,需要在Confluence文件目录中,找到
confluence.cfg.xml
file文件,并在<properties>
信息段中增加如下参数:<properties> ... <property name="hibernate.connection.isolation">2</property> ... <properties>
对于新安装Confluence时,在配置JDBC连接串时,增加sessionVariablec参数,使用READ-COMMITTED:
?sessionVariables=tx_isolation='READ-COMMITTED' 如jdbc:mysql://127.0.0.1:3306/confdb?sessionVariables=tx_isolation='REA