Confluence配置MySQL数据库驱动及连接

本文最后更新于:2024年4月21日 晚上

1、MySQL安装

推荐Mysql5.7版本,安装过程及基础配置参考:https://blog.csdn.net/qq_44281591/article/details/117935147

数据库状态检查:正常运行为active状态

1
systemctl status mysqld

image-20240415110618597

查看临时密码:

1
2
3
grep 'temporary password' /var/log/mysqld.log
# 返回如下:localhost后所接的是临时密码
2024-04-14T15:50:51.690115Z 1 [Note] A temporary password is generated for root@localhost: lK%kU!jLM3kP

修改数据库密码:

1
2
# 一路y,中间会替换user及root用户的密码,一共修改四个密码,建议统一
mysql_secure_installation

用新密码登录:

1
mysql -u root -p

image-20240415114348083

2、配置数据库

2.1、创建confluence数据库

Confluence创建对应的数据库,并配置UTF8字符集:

注意:很多教程会将字符集配置为utf8_bin,但实际confluence是不支持的,按照官方的要求,要求字符集为utf8mb4,否则会出现下列问题:

image-20240415150404666

1
create database confluence default character set utf8mb4 collate utf8mb4_bin;

image-20240415121339102

授权confluence用户权限:

1
2
# grant all on Linux用户名.* to 'mysql用户名'@'%' identified by '填入数据库访问密码'; 
grant all on confluence.* to 'confluence'@'%' identified by '填入数据库访问密码';

image-20240415121446029

刷新权限:

1
flush privileges;

检查是否添加成功:

1
2
use mysql
select host,user from user;

添加成功能够正常查询到confluence用户:

image-20240415121720099

完整一键指令:

1
mysql -uroot -p -e "create database confluence default character set utf8mb4 collate utf8mb4_bin;grant all on confluence.* to 'confluence'@'%' identified by '填入数据库访问密码';flush privileges;"

2.2、MySQL隔离等级配置

这里如果数据库设置不符合要求在后面的confluence安装中可能会提示”Confluence设置MySQL数据库报错:必须使用’READ-COMMITTED’作为默认隔离级别。”修复方法:

1
2
3
4
# 登录数据路
mysql -u root -p
# 修改MySQL隔离级别
SET GLOBAL tx_isolation='READ-COMMITTED';

image-20240415144941424

2.3、MySQL配置文件修改

修改mysql配置

1
2
cat /etc/my.cnf
vim /etc/my.cnf

数据库配置文件修改:

1
2
3
4
5
6
7
8
9
10
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_bin
default-storage-engine=INNODB
max_allowed_packet=256M
innodb_log_file_size=2GB
transaction-isolation=READ-COMMITTED
binlog_format=row
log-bin-trust-function-creators=1
optimizer_switch=derived_merge=off

如果有下面这一行,删掉:

1
2
// remove this if it exists
sql_mode = NO_AUTO_VALUE_ON_ZERO

image-20240415145548063

配置完成后重启mysql服务:

1
systemctl restart mysqld

此步骤参考官方文档:

3、confluence配置MySQL驱动

3.1、下载JDBC驱动

maven开源仓库下载对应JDBC驱动,这里我选择5.19版本:https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.49/

image-20240415092737045

使用wget指令在Linux设备上下载至本地:

1
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.49/mysql-connector-java-5.1.49.jar

3.2、confluence配置MySQL驱动

在未装JDBC前,confluence数据库配置页面如下:无法正常驱动MySQL

image-20240415092430026

移动JDBC jar文件至confluence配置路径:

1
2
3
mv mysql-connector-java-5.1.49.jar /usr/local/software/confluence/confluence/WEB-INF/lib
# 检查是否移动成功
ll /usr/local/software/confluence/confluence/WEB-INF/lib | grep mysql-

4、confluence配置MySQL

在完成前几节的配置之后,重启 Confluence 并继续安装过程:

1
2
3
4
# 关闭confluence
/usr/local/software/confluence/bin/stop-confluence.sh
# 开启confluence
/usr/local/software/confluence/bin/start-confluence.sh

Linux浏览器打开confluence页面:https://localhost:5050

之后,配置完JDBC进入数据库配置页面会显示如下:

image-20240415140932621

通过连接字符串连接:

注意:上面配置字符集为utf8mb4,此处配置要求为utf8

1
jdbc:mysql://localhost:3306/confluence?sessionVariables=tx_isolation='READ-COMMITTED'&useUnicode=true&characterEncoding=utf8

image-20240415141737589

在经过上述的配置重启数据后,刷新页面重新连接,测试通过后进入下一步安装:

image-20240415150109994

配置中:

image-20240415150207957

配置完成后会自动进入confluence初始化配置界面,不在此处说明。

5、拓展:utf8字符集错误解决步骤细节

解决方法:

  • 1、停掉confluence服务
1
/usr/local/software/confluence/bin/stop-confluence.sh
  • 2、数据库服务器参数修改:

由于前面已经修改/etc/my.cnf配置文件,其中确保有下面两处配置:

1
2
character-set-server=utf8mb4
collation-server=utf8mb4_bin

修改完成后重启mysql服务。

  • 3、修改数据库、表、字段的字符集和collation

登录mysql:

1
mysql -u root -p

修改confluence数据库字符集:

1
2
3
4
SET FOREIGN_KEY_CHECKS=0;

//To Change database collation:数据库修改
ALTER DATABASE confluence CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

image-20240415153143342

最后执行下面:

1
SET FOREIGN_KEY_CHECKS=1;

image-20240415153444371

  • 4、启动confluence
1
/usr/local/software/confluence/bin/start-confluence.sh

image-20240415153557009

Tips 一般情况下,建议按照2.1、创建confluence数据库小节在新建数据库时指定正确的字符编码,避免后续数据库中部分表或文本出现字符错误,出现隐藏的问题。

全文参考:

https://developer.aliyun.com/article/1071437

https://www.cnblogs.com/wjoyxt/p/10689883.html

https://developer.aliyun.com/article/439166

https://www.cnblogs.com/LOVEYU/p/13684158.html


Confluence配置MySQL数据库驱动及连接
http://www.codestar.top/2024/04/21/Confluence/Confluence配置MySQL数据库驱动及连接/
作者
mini小新
发布于
2024年4月21日
更新于
2024年4月21日
许可协议