【原】CentOS7上安裝Xwiki8.2.1

来源:http://www.cnblogs.com/tielemao/archive/2016/08/19/5786712.html
-Advertisement-
Play Games

環境 CentOS 7內核版本為 3.10.0-327.el7.x86_64JDK8(jdk1.8.0_101)+Tomcat7.0.67+MySQL5.6.32XWIKI 8.2.1 xwiki-enterprise-web-8.2.1.war 一、安裝JDK8 JDK包下載回來jdk-8u101 ...


環境

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,出現初始化和安裝設置界面

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文針對 Python 操作 MySQL 主要使用的兩種方式講解: 原生模塊 pymsql ORM框架 SQLAchemy 本章內容: pymsql 執行 sql 增\刪\改\查 語句 pymsql 獲取查詢內容、獲取自增 ID pymsql 游標 pymsql 更改 fetch 數據類型 pyms... ...
  • Docker提供了輕量級的虛擬化,它幾乎沒有任何額外開銷。 提供了一個從開發到上線均一致的環境。 開發效率:一是我們想讓開發環境儘量貼近生產環境 二是我們想快速搭建開發環境 基於docker研發小組 qq群:108636195 概要: 1、只在資料庫初始化與資料庫遷移使用,普通迭代還是走提交增量腳本 ...
  • 概述 MongoDB 是一款跨平臺、面向文檔的資料庫。用它創建的資料庫可以實現高性能、高可用性,並且能夠輕鬆擴展。MongoDB 的運行方式主要基於兩個概念:集合(collection)與文檔(document)。 資料庫 資料庫是集合的實際容器。每一資料庫都在文件系統中有自己的一組文件。一個 Mo ...
  • 第一篇:屌炸天實戰 MySQL 系列教程(一) 生產標準線上環境安裝配置案例及棘手問題解決 第二篇:屌炸天實戰 MySQL 系列教程(二) 史上最屌、你不知道的資料庫操作 第三篇:屌炸天實戰 MySQL 系列教程(三)你不知道的 視圖、觸發器、存儲過程、函數、事物、索引、語句 第四篇:屌炸天實戰 M ...
  • 對makefile文件的要點作了總結,包括變數、表達式、函數、規則等方面,並介紹了make命令的相關用法。 ...
  • 參考:www.cnblogs.com/forstudy/archive/2012/04/05/2433853.html 一 進程與線程 進程: 系統中程式執行和資源分配的基本單位 每個進程有自己的數據段、代碼段和堆棧段 在進行切換時需要有比較複雜的上下文切換 線程: 線程有獨立的棧段/errno/線 ...
  • Tomcat需要JDK的支持,所以安裝Tomcat前先安裝JDK。 一、首先到JDK官網下載與自己機器相應的JDK。註意機器位數,Linux系統的話可以用uname -a命令查看系統信息,如果是Ubuntu的系統,下載尾碼為.tar.gz的就行。 我64位的機器下的是這個JDK:wget http: ...
  • 1 位置 使用vim /usr/sysconfig/iptables 2 啟動、關閉、保存 service iptables stop service iptables start service iptables restart service iptables save 3 結構 iptable... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...