Ubuntu14.04 安裝tomcat伺服器

Sike發表於2015-11-22

說說tomcat8.0_60在linux jdk1.8.0_60上的那些坑

坑1

  • 當你下載好tomcat之後,解壓到/opt/apache-tomcat-x.x/之後,開始在terminal中敲./bin/startup.sh,你會遇到第一個坑,tomcat並沒有把所有資訊都列印到終端,這時你也不知道伺服器是否已經啟動了!那就試一下吧,curl localhost:8080,我去果斷卡住了。

    這時你意識到tomcat出現了問題,但是什麼問題?
    
  • 然後你可以執行tail -f logs/catalina.out,可以看到輸出結果:

Deploying web application directory /usr/local/apache-tomcat-8.0.28/webapps/examples
  • 它卡在這裡了!當然首先想到的是jre配置的問題,畢竟webapp在部署時卡死,肯定和jre有關。當然之所以說是坑,就是因為結果是邪門的。

  • 執行echo $JAVA_HOME,切換到java_home目錄下,vim jre/lib/security/java.security
    找到securerandom.source=file:/dev/random,改成securerandom.source=file:/dev/./urandom,具體原因請參考連結描述

坑2

過了坑1,也拜託不了被坑的命運。

  • 先解決前面說的那個問題,如果執行./bin/catalina.sh run,會直接輸出到終端,沒用每次檢視tail -f logs/catalina.out,如果你需要切換任務,ctrl+z,出現[1]+ Stopped ./bin/catalina.sh run,然後執行bg 1,檢視後臺任務jobs,切換前臺fg 1.

  • 現在我想讓tomcat監聽在80埠,window下修改conf/server.xml,mac os x不僅要修改配置,還用root使用者,linux下root都不行。

  • 首先安裝apt-get install authbind,參考連結描述

坑3

今天很殘酷,明天更殘酷,後天很美好。其實後天也一般,因為大多數人都死在後天之前,後天就算再爛,也比死了強吧!

這下伺服器啟動了,並且也繫結到80埠了,發現報了一大堆錯table xxx no exits(不應該啊,資料庫我都部署好了),最終判斷是 mysql嚴格區分大小寫的問題
mysql的資料庫檔案其實是存放在data目錄下的,linux對檔案大小寫敏感的。所以說如果你的資料庫表名如果是大寫,程式中也必須是大寫。但是如果上線的時候兩者大小寫不統一,要不你改程式(這個不明智),要不配置mysql對大小寫不敏感。貌似要重啟伺服器,如果要生效的話。

相關文章