confluence服务器的一次系统崩溃引起的confluence.cfg.xml配置文件丢失故障处理

故障是如何产生的???

    公司年度电力检修,周六周末停电两天,周五下班对服务器进行关机,服务器关机死机导致关机不成功,强制关闭电源两次,周一上班开服务器发现程序启动以后不能访问confluence页面,错误信息如下:

程序启动失败后,访问页面返回这么个玩意儿。去confluence官网查找问题分析原因

几个重要文件:
启动参数:/opt/atlassian/confluence/confluence/WEB-INF/classes/confluence-init.properties

confluence.home = /home/atlassian/application-data/confluence

配置文件:/home/atlassian/application-data/confluence/confluence.cfg.xml

发现系统崩溃重启导致了confluence.cfg.xml文件为空,启动时读取不到对应的数据库参数和配置(真是坑)。在备份文件里也找不到此文件,只找到了历史操作events数据。
切到文件目录下查看,果然文件内容为空。

参考了官网文件后1,找到了如下方法

  1. 备份数据库DB1和Confluence home文件夹HOME1
  2. 新建一个空数据库DB2,用于创建新的confluence.cfg.xml,稍后可以废弃。
  3. 创建一个新的空的home文件夹HOME2。编辑<confluence_install_directory>/confluence/WEB-INF/classes/confluence-init.properties,指向HOME2
  4. 重启Confluence
  5. 按照安装指导正常配置,在数据库配置页面,指向第二步创建的数据库
  6. 完成设置指导
  7. 关闭Confluence
  8. 这时就有一个完整的confluence.cfg.xml文件
  9. 把这个文件复制到HOME1文件夹中
  10. 变更数据库链接到所需的数据库DB1上
  11. 变更<confluence_install_directory>/confluence/WEB-INF/classes/confluence-init.properties 将home设置为HOME1
  12. 重启Confluence

授权码生成步骤比较坑,服务器下载confluence_keygen.jar此文件。

我个人是放在了自己电脑上直接双击打开此文件,输入授权码界面的server id ,name随便写

1、如上图,保存获取到的服务器ID,关闭confluence:

/etc/init.d/confluence stop

2、解压破解包,将confluence_keygen.jar 拷贝到windows。从/opt/atlassian/confluence/confluence/WEB-INF/lib中,拷贝atlassian-extras-decoder-v2- 3.2.jar到windows,并重命名为atlassian-extras-2.4.jar。

3、在windows下,生成License Key。

cmd 中执行:

java -jar confluence_keygen.jar

然后把上面保存的Server ID(服务器ID)粘贴进去,然后点击“.gen!”,保存生成的key。

4、打补丁。点击“.patch!”,选择第2步中重命名的atlassian-extras-2.4.jar,会生成新的atlassian-extras-2.4.jar,旧的jar包会被改为.bak。

5、上传新的atlassian-extras-2.4.jar和破解包下的Confluence-5.6.6-language-pack-zh_CN.jar、mysql-connector-java-5.1.39-bin.jar到/opt/atlassian/confluence/confluence/WEB-INF/lib,并且删除atlassian-extras-decoder-v2-3.2.jar。

6、启动confluence

/etc/init.d/confluence start

然后跟着配置向导到了数据库连接配置继续入坑,(数据库为mysql数据库))如下图:

点击红框处大概告诉我们是数据库的字符集编码有问题,于是进入数据库查看字符集,UTF-8没毛病啊,那就看数据库的配置文件吧,最后在配置里面加入了如下两行:

将默认字符集指定为UTF-8   :

collation-server=utf8_bin

将默认存储引擎设置为InnoDB:

default-storage-engine=INNODB

重启mysql服务。

检测通过,完成配置向导,按照前面12个操作步骤的7-12步继续操作完成此次整个故障的排查。confluence恢复正常。

(0)

相关推荐