目录
1、出现此错误的原因:
MySQL 以错误的事务隔离级别运行。在 3.5 中,Confluence 强制实施了 READ-
COMMITTED 的全局事务隔离级别。从 3.5.6 开始,可以在全局或会话级别设置此属性。新安装将
自动设置正确的会话隔离级别,但升级的安装需要手动设置。
2、解决方法:
a、将全局事务隔离级别设置为READ-COMMITTED
以通过编辑MySQL的文件(通常是namedon Windows操作系统)来配置MySQL服务器的设
置来做到这一点。找到文件中的部分并添加/修改以下参数:my.cnf
my.ini
[mysqld]
[mysqld]
...
transaction-isolation=READ-COMMITTED
...
b、在 Confluence 中设置会话隔离级别
(Confluence3.5.6 及以上)在 Confluence 中设置会话隔离级别。对于已经安装的
Confluence,在 Confluence 主目录,找到confluence.cfg.xml文件,并在<properties>标签下面添
加以下参数。
<properties>
...
<property name="hibernate.connection.isolation">2</property>
...
<properties>
c、对于全新安装Confluence,或者升级后出现该问题
请按如下方式配置 JDBC 字符串,以将 sessionVariable 设置为READ-COMMITTED:
MYSQL 5.X版本
?sessionVariables=tx_isolation='READ-COMMITTED'
e.g. jdbc:mysql://127.0.0.1:3306/confdb?sessionVariables=tx_isolation='READ-COMMITTED'
MYSQL 8.X版本
?sessionVariables=transaction_isolation='READ-COMMITTED'
e.g. jdbc:mysql://127.0.0.1:3306/confdb?sessionVariables=transaction_isolation='READ-COMMITTED'