概述

安装

大概率不能一蹴而就,一次性安装成功,那么需要知道如何卸载干净,重新安装。

卸载

  1. 删除主目录
    ​​​rm -rf /opt/atlassian/​
  2. 删除数据目录
    ​​​rm -rf /var/atlassian/​
  3. 删除用户
    ​​​userdel -r confluence​​​ 如果提示:​​userdel: user confluence is currently used by process 325653​​ 则执行命令:​​kill 325653​​,再次尝试删除用户。
  4. 删除启动脚本文件
    ​​​rm /etc/init.d/confluence​

更换端口

CentOS 7安装confluence5.4.4踩坑记录_3d

配置URL

参考的​​Confluence搭建与配置​​​,里面说是将下面URL中的​​&​​​替换成​​&​​​:
原始:​​​jdbc:mysql://127.0.0.1:3306/wiki?useUnicode=true&characterEncoding=UTF8&sessionVariables=storage_engine%3DInnoDB​​​ 得到:​​jdbc:mysql://127.0.0.1:3306/wiki?useUnicode=true&characterEncoding=UTF8&sessionVariables=storage_engine%3DInnoDB​

理论上,参考​​mybatis零碎知识点​​mapper xml 特殊符号转义写法 部分,确实应该这么改。

但是安装失败;我安装的MySQL版本是:

CentOS 7安装confluence5.4.4踩坑记录_mysql_02


测试下来,正确的URL地址应该是:

​jdbc:mysql://127.0.0.1:3306/wiki?useUnicode=true&ampcharacterEncoding=UTF8&ampsessinotallow=storage_engine%3DInnoDB​

即,不加引号!!!

将​​127.0.0.1​​​换成​​192.168.0.149​​,用DataGrip测试地址效果如下:

CentOS 7安装confluence5.4.4踩坑记录_mysql_03

数据已存在

如图,在安装过程中,配置数据库连接时,由于反反复复重试,导致建的数据库​​wiki​​​里面已经创建部分数据表,此时如果选择​​continue and overwrite existing data​​,后面还是会失败。

CentOS 7安装confluence5.4.4踩坑记录_mysql_04


解决方法,使用客户端工具如DataGrip在创建的数据库右键Drop,然后重试。

hibernate.connection.url

安装汉化插件成功之后,需要修改​​hibernate.connection.url​​,敲入命令:

​vim /var/atlassian/application-data/confluence/confluence.cfg.xml​

此时修改的地址又变成:

​jdbc:mysql://127.0.0.1:3306/wiki?useUnicode=true&characterEncoding=UTF8&sessionVariables=storage_engine%3DInnoDB​​ 如图:

CentOS 7安装confluence5.4.4踩坑记录_3d_05


就是一个分号​​;​​的区别啊。否则报错:

​BootstrapException: Unable to bootstrap application: Failed to parse config file: Error on line 25 of document : The reference to entity "ampcharacterEncoding" must end with the ';' delimiter. Nested exception: The reference to entity "ampcharacterEncoding" must end with the ';' delimiter.​

重启Duplicate entry ‘ff8080817a85eef9017a85f0b8830003’ for key ‘USERNAME’

修改完配置文件​​/var/atlassian/application-data/confluence/confluence.cfg.xml​​​之后,重启:​​/etc/init.d/confluence restart​

报错:
​​​org.springframework.dao.DataIntegrityViolationException: Hibernate operation: could not insert: [com.atlassian.confluence.security.persistence.dao.hibernate.UserLoginInfo#524289]; SQL []; Duplicate entry 'ff8080817a85eef9017a85f0b8830003' for key 'USERNAME'; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry 'ff8080817a85eef9017a85f0b8830003' for key 'USERNAME'​

检查​​wiki.user_mapping​​​等多张数据表,并没有发现哪个数据表有​​admin​​用户的重复数据啊,忽视,刷新页面,

成功!!!

参考

​Confluence搭建与配置​