搭建wiki服务器
本文基于centOS7.1系统搭建
登录远程linux
本机实在win10版本下,以管理员身份启动Windows PowerShell
用power shell远程登录centOS
ssh root@ip地址
然后输入密码,密码是不可见的,回车登录
登录成功
由于远程服务器下载速度缓慢,所以我使用windows下载然后传过去,这里就不用命令行了,直接用可视化工具拖拽复制粘贴就好,我们先下载XFTP6
下载安装XFTP
链接:http://down-www.7down.net/pcdown/soft/xiazai/xftp6.zip
安装 新建连接,输入ip地址,账户(一般是root)和密码
链接:https://product-downloads.atlassian.com/software/confluence/downloads/atlassian-confluence-6.7.1-x64.bin
下载安装MySQL5.7
卸载自带数据库
我网上搜到的教程是需要卸载原来的数据库,但我执行到后边才发现密码安全配置死活改不了,无法重启MySQL,出现了如下状况
才发现又要把maria DB装回去,但安装mariadb也依然无效,而使用yum安装也不起作用,原因是mariadb的安装本身就没有完成,执行以下命令,查看mariadb的依赖情况
sudo yum search mariadb
然后安装缺少的依赖包
yum install mariadb-embedded mariadb-libs mariadb-bench mariadb mariadb-sever
更新源
直接yum安装实在是太慢了我更新了一下源,用了163的
下载源
清除原缓存
下载远程包信息到本地缓存
更新源
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum clean all
yum makecache
yum update
然后再安装依赖包,但我发现还是不行,于是
sudo yum search mariadb
再次查看需要的包,一个一个安装,这个还是要yum安装特别慢,可能是我这边服务器的问题。
安装好之后就没有maria DB了,
说一下 我是下载了mysql rpm包之后本地更新过mysql的yum源,之后才做的这些步骤,也就是不断试错
检查mysql是否存在
rpm -qa | grep mysql
没有的话(这种安装方式受限于网络,更推荐用tar解压方式安装会更快,教程:https://www.cnblogs.com/dadadechengzi/p/6723686.html(别人写的))
安装mysql
如果有的话就不用安装了,我这里之前卸载了MariaDB导致我必须再把MariaDB的依赖安装回去,也有可能是搞错了,启动命令可能有问题
在linux中直接下载即可
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
本地安装yum源:
注意与下载的rpm版本一致
yum localinstall mysql57-community-release-el7-9.noarch.rpm
安装MySQL
yum install mysql-community-server
启动MYSQL
这里就是我上边遇到的坑,网上查到的安装教程启动和添加到开机启动命令是这样
systemctl start mysqld
systemctl enable mysqld
systemctl daemon-reload
查看初始密码(这个命令之后密码忘记也可以用来查看密码)
grep 'temporary password' /var/log/mysqld.log
密码是刚才查出来的,复制粘贴就好,注意密码是不显示的
mysql -uroot -p
更改密码
重点来了,我所有遇到的坑都是因为它
MySql5.7默认密码规则是要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。
否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误。
所以需要更改密码规则
更改密码策略
这里有两种方案
第一种修改mysql环境变量更改规则
通过msyql环境变量可以查看密码策略的相关信息:
mysql> show variables like '%password%';
说明:
validate_password_dictionary_file:密码策略文件,策略为STRONG才需要
validate_password_length:密码最少长度
validate_password_mixed_case_count:大小写字符长度,至少1个
validate_password_number_count :数字至少1个
validate_password_special_char_count:特殊字符至少1个 上述参数是默认策略MEDIUM的密码检查规则。
validate_password_policy:密码策略,默认为MEDIUM策略 ,共有如下三种密码策略:
策略 检查规则
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file
二
当然我们也可以通过修改/etc/my.cnf文件,通过添加validate_password_policy配置,来指定密码策略,如下:
validate_password_policy=0 #0(LOW),1(MEDIUM),2(STRONG)其中一种,注意2需要提供密码字典文件
这里我在my.conf中禁用了密码策略,
在/etc/my.cnf文件中加入
validate_password = off
之后重启MySQL
重启MySQL
前面说重点,但其实这才是根本原因,之前的systemctl start mysqld可以启动,但无法关闭,也无法restar,这里查了大量教程和资料,自己也试了很多坑,才发现在centOS中重启用
(可能是我卸载了MariaDB后又安装所导致,因为systemctl restar mysqld 以及一直提示没有mysql.service)
这里记一个命令
查看有没有mysql.service 文件
systemctl list-unit-files
我的是安装了之后,如果没有还要安装全才行
然后
service mysqld start
没错这样才能重启mysql成功,这时候就可以随意设置密码了,否则简单一些的密码是无法设置的
登录mysql后更改密码
更改密码
更改密码为root
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
更改成功
yum install -y mysql-server mysql mysql-devel
service mysqld start #初始化及相关配置
chkconfig --list | grep mysqld #查看mysql服务是不是开机自动启动
chkconfig mysqld on #设置成开机启动
mysqladmin -u root password '123456' #通过该命令给root账号设置密码为 123456
mysql -u root -p #登录mysql数据库
create database confluence character set UTF8;
grant all on confluence.* to confluence@"%" identified by "confluence";
grant all on confluence.* to confluence@"localhost" identified by "confluence";
FLUSH PRIVILEGES;
quit #退出
service mysqld stop #关闭mysql服务
cd /etc/
vi my.cnf
在[mysqld]下面加上character-set-server =utf8 #解决中文显示???的乱码问题
service mysqld start #启动mysql服务
开启root远程访问权限
GRANT ALL PRIVILEGES ON *.* TO'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
flush privileges;
切换openJDK为OracleJDK
卸载openJDK
查看已安装jdk
rpm -qa|grep jdk
yum -y remove java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64
yum -y remove java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64
yum -y remove java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.5.el7.x86_64
查看java命令
java -version
java -version
-bash: /usr/bin/java: No such file or directory
oracleJDK下载链接:https://download.oracle.com/otn-pub/java/jdk/8u201-b09-demos/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64-demos.tar.gz?AuthParam=1551102038_dd2c3074c9eb420ddfa55f8d9f58ef94
我安装的是1.8的201版本
下载后解压 移动至/usr/local/java/目录
解压
tar -zxvf jdk-8u201-linux-x64.tar.gz
移动
mv jdk1.8.0_201/ /usr/local/java
配置profile
命令行键入
vim /etc/profile
在文件末尾配置环境
export JAVA_HOME=/usr/local/java/jdk1.8.0_201
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
使/etc/profile生效
命令行键入
source /etc/profile
查看是否成功
java -version
javac
安装
跳转至atlassian-confluence-6.7.1-x64.bin文件所在目录,我这里放在了download目录下,所以
cd /root/Downloads
修改文件权限
chmod +xatlassian-confluence-6.7.1-x64.bin
安装 ,这条命令可能第一次会提示没有文件,再执行一次就好了./后按tab键自动补全
./atlassian-confluence-6.7.1-x64.bin
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319739190_69034277AA1DE02F77F96D037E1DD3DE)
安装过程中会分别提示输入 o ,i, y表示同意,回车好像也可以,可以看到端口是8090
使用浏览器输入地址和端口
[http://你的ip地址:8090](http://xn--ip-0p3ck01akcu41v:8090)
可以看到搭建成功
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319739462_69034277AA1DE02F77F96D037E1DD3DE)
## **破解confluence**
破解文件链接
链接: [https://pan.baidu.com/s/1zP5aUQpvg0z7hn8AEmIbXw](https://pan.baidu.com/s/1zP5aUQpvg0z7hn8AEmIbXw) 提取码: 5bpi
首先进入wiki链接,然后选择语言为中文,这里我没顾的上截图,有的用的别人的有的用的我自己的,不过都是一模一样的
接上,搭建成功之后继续按下图操作配置
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319739775_69034277AA1DE02F77F96D037E1DD3DE)
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319740019_69034277AA1DE02F77F96D037E1DD3DE)
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319740190_69034277AA1DE02F77F96D037E1DD3DE)这里的serverID就是刚才记录下的id
将/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.3.0.jar文件ftp到本地(Windows环境下),这里我用XFTP直接传输到我的windows桌面,
重命名为atlassian-extras-2.4.jar(注意文件名不能有误,否则检测不到),运行confluence_keygen.jar,点击.patch,选择atlassian-extras-2.4.jar文件,点击打开,jar文件破解成功。
patch之后会回到破解程序的首页,这时候输入name,邮箱和Server ID,name和邮箱随便ServerID就是刚记录下来的,填进去,点击gen生成key,把生成的key记录下来
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319740335_69034277AA1DE02F77F96D037E1DD3DE)破解完之后同时会生成一个后缀为bak的备份文件,到此就说明你的jar文件已被破解
把破解后的atlassian-extras-2.4.jar再重命名为atlassian-extras-decoder-v2-3.3.0.jar,然后再传到/opt/atlassian/confluence/confluence/WEB-INF/lib目录下并覆盖
然后重启服务
sh /opt/atlassian/confluence/bin/stop-confluence.sh
sh /opt/atlassian/confluence/bin/start-confluence.sh
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319740541_69034277AA1DE02F77F96D037E1DD3DE)
Confluence本身是没有集成mysql驱动的,名称类似于mysql-connector-java-5.1.46.jar需要自己下载并上传
我这里直接用的IDEA自带的复制过去,也可以自己下载将驱动文件**移动到/opt/atlassian/confluence/confluence/WEB-INF/lib;**
我这里用了之前的XFTP直接上传上去了,也可以用linux命令在驱动所在目录移动至/opt/atlassian/confluence/confluence/WEB-INF/lib
cp mysql-connector-java-5.1.46.jar /opt/atlassian/confluence/confluence/WEB-INF/lib
目录下,如过你已经有IDEA了就不需要去下载了,IDEA自带的database插件的驱动(注意:这个也是需要下载的,除非你用过配置过IDEA自带的DataBase插件,否则还是另行下载去吧)在C:\Users\Tablo.IntelliJIdea2018.3\config\jdbc-drivers\MySQL Connector\J
这里也贴一个下载链接:[https://dev.mysql.com/downloads/connector/j/5.1.html](https://dev.mysql.com/downloads/connector/j/5.1.html)
移动过去之后重启Confluence
命令:
sh /opt/atlassian/confluence/bin/stop-confluence.sh
sh /opt/atlassian/confluence/bin/start-confluence.sh
开启root用户远程数据库连接后测试
乱码提示要用utf8_bin排序规则 我用navicat直接编辑数据库做修改,再次测试
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319740741_69034277AA1DE02F77F96D037E1DD3DE)
![](https://uploadfiles.nowcoder.com/images/20190809/742012743_1565319741010_69034277AA1DE02F77F96D037E1DD3DE)
在mysql中执行以下语句并再次测试
set global transaction isolation level read committed;
![image](https://upload-images.jianshu.io/upload_images/19159596-bd23c4e72290c372?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
成功
![image](https://upload-images.jianshu.io/upload_images/19159596-8cd09ab370a919c4?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)