环境

CentOS 7
内核版本为  3.10.0-327.el7.x86_64
JDK8(jdk1.8.0_101)+Tomcat7.0.67+MySQL5.6.32
XWIKI 8.2.1 xwiki-enterprise-web-8.2.1.war

一、安装JDK8

JDK包下载回来jdk-8u101-linux-x64.tar,放到服务端解压到/usr/java(可以提前新建此文件夹)就完成安装了,接下来是配置环境变量才为重要步骤。

vim /etc/profile
在底部添加以下内容

JAVA_HOME=/usr/java/jdk.1.8.0_101 #视你自己安装的实际版本和路径为准
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH

修改完后使用 source /etc/profile 使之立即生效

另最好手打,并修改完后敲javac 或java -version命令看能运行不,能运行则表示变量设置正确。

二、配置Tomcat 与 JAVA变量环境

tomcat7同样在官网下好tar包解压到/usr/local/tomcat上,通常解压得出的根目录是apache_tomcat版本什么的,为了以后使用方便还得将此根目录下的文件全mv到tomcat上。

注意xwiki官网提示最好不要用7.0.70的版本(使用中有回滚的bug未处理),所以这里建议用的是tomcat7.0.67的版本

设置tomcat开机启动

1.tomcat 需要增加一个pid文件
在tomca/bin目录下面,增加setenv.sh 配置,catalina.sh启动的时候会调用,同时配置java内存参数。

JAVA_HOME=/usr/java/jdk1.8.0_101
TOMCAT_USER=tomcat
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
#add java opts
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

给脚本一个执行权限
chmod -R 755 setnev.sh

2.增加tomcat.service
在/usr/lib/systemd/system目录下增加tomcat.service,目录必须是绝对目录。
-------------------------------
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/tomcat/tomcat.pid
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
------------------------------------
[unit]配置了服务的描述,规定了在network启动之后执行。[service]配置服务的pid,服务的启动,停止,重启。[install]配置了使用用户。

3.使用tomcat.service

配置开机启动
systemctl enable tomcat

启动tomcat
systemctl start tomcat

停止tomcat
systemctl stop tomcat

重启tomcat
systemctl restart tomcat

因为配置pid,在启动的时候会再tomcat根目录生成tomcat.pid文件,停止之后删除。
同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。
多个tomcat可以配置在多个目录下,互不影响。

修改conf/server.xml
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="UTF-8"
               compression="on"
               compressionMinSize="2048"
               compressableMimeType="text/html,text/xml,text/css,text/javascript,application/x-javascript"/>

配置java内存

此处有做上面setnev.sh脚本的话可以跳过
修改bin/catalina.sh:
JAVA_HOME="/usr/java/jdk1.8.0_101/"
JAVA_OPTS="-Xmx800m -XX:MaxPermSize=196m"  #优化java内存
CATALINA_OPTS="-server -Xms800m -Xmx1480m -XX:MaxPermSize=222m -Dfile.encoding=utf-8 -Djava.awt.headless=true -XX:+UseParallelGC -XX:MaxGCPauseMillis=100"

三、YUM安装mysql

先安装带有可用的mysql5系列社区版资源的rpm包

rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

查看可用的mysql安装资源

yum repolist enabled | grep "mysql.*-community.*"

一般来说,只要安装mysql-server跟mysql-client
这个时候我们可以直接使用yum的方式安装MySQL了

yum -y install mysql-community-server

注意安装完成后将mysql服务加入开机启动后需重启一次生效
加入开机启动 systemctl enable mysqld

启动mysql服务进程 systemctl start mysqld

准备mysql数据库

1、设置字符集为utf8
vim /etc/my.cnf

在[mysqld]下添加
default-character-set=utf8

底部再添加
[mysql]
default-character-set=utf8

2、创建xwiki数据库
create database xwiki character set utf8 collate utf8_general_ci;

3、创建xwiki用户 及授予权限+密码给xwiki用户
 grant all privileges on xwiki.* to xwikiadmin@localhost identified by '你设置的密码';

四、安装xwiki

1、将xwiki的WAR文件解压到tomcat的webapps目录下:

unzip xwiki-enterprise-web-8.2.1.war -d /usr/local/tomcat/webapps/xwiki/

2、下载mysql jdbc driver到xwiki/WEB-INF/lib目录

wget http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39.jar

建议到官网手动下载 mysql-connector-java-5.1.39_bin.jar 然后再放lib目录

3、修改xwiki/WEB-INF/hibernate.cfg.xml
在选择数据库那块区域将默认的hsql给注释掉,然后将MySQL那一段去掉注释

<!-- MySQL configuration.
         Uncomment if you want to use MySQL and comment out other database configurations.
         Notes:
           - if you want the main wiki database to be different than "xwiki"
             you will also have to set the property xwiki.db in xwiki.cfg file
    -->

<property name="connection.url">jdbc:mysql://localhost/xwiki</property>
    <property name="connection.username">xwikiadmin</property>
    <property name="connection.password">此处为密码</property>
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="connection.useUnicode">true</property>
    <property name="connection.characterEncoding">UTF-8</property>
    <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
    <property name="dbcp.poolPreparedStatements">true</property>
    <property name="dbcp.maxOpenPreparedStatements">20</property>
    <mapping resource="xwiki.hbm.xml"/>
    <mapping resource="feeds.hbm.xml"/>
    <mapping resource="activitystream.hbm.xml"/>
    <mapping resource="instance.hbm.xml"/>
    <mapping resource="mailsender.hbm.xml"/>

新增的两行是:
    <property name="connection.useUnicode">true</property>
    <property name="connection.characterEncoding">UTF-8</property>

试运行并初始化安装

1、运行tomact
2、在浏览器打开:http://127.0.0.1:8080/xwiki,出现初始化和安装设置界面

【原】CentOS7上安装Xwiki8.2.1的更多相关文章

  1. 在centos7上安装Jenkins

    在centos7上安装Jenkins 安装 添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins ...

  2. 在 CentOS7 上安装 zookeeper-3.4.9 服务

    在 CentOS7 上安装 zookeeper-3.4.9 服务 1.创建 /usr/local/services/zookeeper 文件夹: mkdir -p /usr/local/service ...

  3. 在 CentOS7 上安装 MongoDB

    在 CentOS7 上安装 MongoDB 1 通过 SecureCRT 连接至 CentOS7 服务器: 2 进入到 /usr/local/ 目录: cd /usr/local 3 在当前目录下创建 ...

  4. 在 CentOS7 上安装 MySQL5.7

    在 CentOS7 上安装 MySQL5.7 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建 ...

  5. 在 CentOS7 上安装 Tomcat9

    在 CentOS7 上安装 Tomcat9 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建目 ...

  6. 在CentOS7上安装JDK1.8

    在CentOS7上安装JDK1.8 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建目录 to ...

  7. 在Centos7上安装漏洞扫描软件Nessus

    本文摘要:简单叙述了在Centos7上安装Nessus扫描器的过程   Nessus 是目前全世界最多人使用的系统漏洞扫描与分析软件,Nessus的用户界面是基于Web界面来访问Nessus漏洞扫描器 ...

  8. 如何在centos7上安装源码包

    在我们使用linux的过程中,有很多程序是通过红帽官网给的系统中安装的,但是一般来说,系统更新的速度比较慢,如果这个时候我们又想用最新版的该怎么办呢?总不能一直等系统升级吧╮(╯﹏╰)╭所以,我们可以 ...

  9. centos7上安装0penStack

    centos7上安装0penStack author:headsen chen 2017-10-09  20:41:54 个人原创,欢迎转载,请注明作者,出去,否则依法追究责任 一,准备工作(配置ip ...

随机推荐

  1. ubuntu openstack packaages

  2. Linux服务器集群系统(一)(转)

    add by zhj:虽然是2002年的文章,但读来还是收益良多.在 章文嵩:谈LVS及阿里开源背后的精彩故事 中LVS发起人及主要贡献者谈了LVS的开发过程及阿里开源的一些故事 原文:http:// ...

  3. HDU 5813 Elegant Construction (贪心)

    Elegant Construction 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5813 Description Being an ACMer ...

  4. 转载IEnumerable与IEnumerator区别

    public interface IEnumerable {     IEnumerator GetEnumerator(); }   public interface IEnumerator {   ...

  5. C#学习笔记(十三):I/O操作

    C#的IO操作主要是针对文件夹和文件的读取和写入操作,下面我们来学习一下相关操作的类. 获取文件信息 Directory和DirectoryInfo 两个类的功能基本相同,区别如下: 前者继承Syst ...

  6. VS~单步调试DLL

    有时我们从第三方下载DLL库之后,在使用VS进行调试时还是很麻烦的,现在我总结一下,在开发过过程中调试DLL的方法,希望对各位在开发中有帮助. 1 VS下载插件.Net Refector 2 引用你的 ...

  7. C#关于外挂汉化的一些思考(API函数FindWindow,FindWindowEx,SendMessage)(转)

    这次我们试着运用C#的API函数去修改别的程序的标题文本(适用范围C#) 其实这是FindWindow,FindWindowEx,SendMessage的应用举例之一 也就是所谓的外挂汉化. 附:Wi ...

  8. cocos2d-x Mask的实现及优化

    转自:http://blog.ch-wind.com/cocos2d-x%E4%B8%ADmask%E7%9A%84%E5%AE%9E%E7%8E%B0%E5%8F%8A%E4%BC%98%E5%8C ...

  9. PostgreSQL的 initdb 源代码分析之三

    继续 其实接前面,整个while循环是这样的: ) { switch (c) { ...... } ...... } 这一句,c = getopt_long(argc, argv, "dD: ...

  10. Codeforces Beta Round #51 D. Beautiful numbers 数位dp

    D. Beautiful numbers Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/55/p ...