Jdk1.6+Tomcat6+Apache2+MySql5 安裝(Windows版) Jdk1.6+Tomcat6+Apache2+MySql5 安裝(Windows版)

noter發表於2007-06-28
Jdk1.6+Tomcat6+Apache2+MySql5 安裝(Windows版)

Jdk1.6+Tomcat6+Apache2+MySql5 安裝(Windows版)

軟體下載:
1, j2se jdk1.6
http://java.sun.com/javase/downloads/index.jsp

2, Tomcat 6
http://archive.apache.org/dist/tomcat/tomcat-6/

3, Apache 2.2.4
http://archive.apache.org/dist/httpd/

4, MySql5.0.27
http://dev.mysql.com/downloads/mysql/

5, mysql-connector-java-5.0.5
http://dev.mysql.com/downloads/connector/j/

6,mod_jk-apache-2.2.4.so
http://tomcat.apache.org/download-connectors.cgi

可以根據需要下載最新的或最穩定的版本,如果部署線上環境可以用穩定的版本,
但是如果在學習和除錯,可以嘗試新的版本,因為事物是向前發展的。

一般網頁程式或服務,如果不是非常巨大,用Tomcat做Web server就可以了,沒有必要整合apache+tomcat。
當然如果確實有必要,比如要把靜態檔案(html,圖片等)和Java檔案分別由apache和tomcat來解析,
或者為了學習、測試、以及還要執行php等等情況,可以考慮整合下apache + tomcat。

如果只需要JSP網頁伺服器的,只要安裝JDK+Tomcat就可以了,安裝過程非常簡單。

                                               http://Jiarry.blogchina.com

================================================================================

安裝過程
本篇安裝介紹下載文件:
http://jarryli.googlepages.com/Jdk1.6Tomcat6Apache2MySql5Install.txt


Step 1 JDK安裝
----------------------------------------------------------------------------------
1.1 點選jdk-6u1-windows-i586-p.exe檔案安裝Jdk,選擇目錄(假使E:/jdk1.6),一路回車,安裝完成
1.2 新增JAVA環境變數(我的電腦右鍵->屬性->高階->環境變數->系統變數)
        CLASSPATH    設定變數值  .;%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;%JAVA_HOME%/lib;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar
        JAVA_HOME    設定變數值  E:/jdk1.6
        PATH         設定變數值  .;%JAVA_HOME%;%JAVA_HOME%/bin;
1.3 在DOS命令列狀態下測試Java是否成功安裝,敲入java -version可以檢視版本
      c:/>java -version
      java version "1.6.0_01"
      Java(TM) SE Runtime Environment (build 1.6.0_01-b06)
      Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing)
1.4 測試HelloWorld,新建一個HelloWorld.java的檔案,內容如下
     public class HelloWorld {
        public static void main(String arg[]) {
            System.out.println("Hello World!這是Java測試程式,說明你已成功安裝了Java -- Jarry!");  
         }
      }
      在命令列輸入javac HelloWorld.java,編譯一下,然後再執行java HelloWorld,就能看到正常的輸出了。
      出現錯誤一般是環境變數或大小寫等有問題,仔細檢查就沒有問題了。      


Step 2 Tomcat安裝
----------------------------------------------------------------------------------
2.1 點選apache-tomcat-6.0.10.exe檔案安裝Tomcat,選擇目錄(假使E:/Tomcat6)安裝完成後
2.2 新增TOMCAT環境變數(我的電腦右鍵->屬性->高階->環境變數->系統變數)
         TOMCAT_HOME    設定變數值  E:/Tomcat6
2.3 從程式選單或是服務裡啟動Tomcat,然後你在瀏覽器輸入http://localhost:8080/就可以看到Tomcat歡迎頁面。
      正常情況下都會成功,如果啟動失敗,請檢查jakarta_service_日期.log日誌,通過它一般可以解決問題。

      比如出現類似報錯:
      [947   prunsrv.c] [error] Failed creating java
      請看一下系統盤windows/system32/下是否丟失msvcr71.dll檔案,如果缺失,需要從別的機器拷貝一個過來。

      開啟瀏覽器 進入http://localhost:8080/,當看見Tomcat小貓的圖示了,這樣表示安裝成功。

     至此,JSP伺服器就搭建完成了,用於學習和測試沒有問題了,如果想要更高階的配置,可以往下面繼續看。

Tomcat 6與Tomcat 5或者之前版本不一樣的就是,首頁沒有顯示具體的版本,貓貓也變大了些。
沒有admin管理頁面了,admin在Tomcat 5.5來預設都沒有了,不過可以下載admin包。
而Tomcat 6.0沒有看見admin包,不過這並不要緊,一般情況下也不需要admin包。

Tomcat 6.0預設也沒有開啟servlet、禁止目錄瀏覽。這需要去conf/下配置web.xml檔案。
修改listings為true即可以目錄瀏覽,

            <param-name>listings</param-name>
             <param-value>true</param-value>
            <!-- false disable listings -->
             <!-- <param-value>false</param-value>-->

   開啟servlet直接訪問功能,把這兩段註釋開啟。
  
     <servlet>
         <servlet-name>invoker</servlet-name>
         <servlet-class>
           org.apache.catalina.servlets.InvokerServlet
         </servlet-class>
         <init-param>
             <param-name>debug</param-name>
             <param-value>0</param-value>
         </init-param>
         <load-on-startup>2</load-on-startup>
     </servlet>

   <servlet-mapping>
         <servlet-name>invoker</servlet-name>
         <url-pattern>/servlet/*</url-pattern>
     </servlet-mapping>


2.4 部署一個新專案testApp,去conf/下配置server.xml

     <Context path="/testApp" reloadable="true" docBase="E:/testApp"
     workDir="E:/Tomcat6/webapps/testApp/work" />
    
     docBase是你程式的目錄,假設放在E根目錄下
     這樣新專案testApp就建立了,重啟Tomcat,訪問http://127.0.0.1:8080/testApp就可以看到你的目錄了

2.5 mysql-java聯結器
      下載mysql java聯結器,可以根據需要選擇3.x 或是 5.x,之前我們通用3.x,現在可以試一下5.x
     http://dev.mysql.com/downloads/connector/j/
      將下載下來得 mysql-connector-java-5.0.5-bin.jar 檔案放到 Tomcat6/commom/lib目錄下
      (Tomcat 6.0 修改了目錄結構,原common/lib下的所有jar包現在統一到lib目錄下,
      因此你需要將你原來放置在common/lib目錄下的jar改到lib目錄下。)

2.6 JDBC資料庫連線池,假設已經安裝了mysql(沒安裝就先安裝),並且建立了資料庫test, 修改conf/下server.xml

   <Context path="/testApp" docBase="E:/testApp"
         debug="5" reloadable="true" crossContext="true"   workDir="">
   <Resource   name="jdbc/testApp"
              auth="Container"
     type="javax.sql.DataSource"
              maxActive="100" maxIdle="30" maxWait="10000"
              username="root" password=""
     driverClassName="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost:3306/test?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=utf-8"/>
</Context>


   注意&要寫成&amp; characterEncoding和useUnicode用來解決中文亂碼問題,地版本配置會略有不同。

    另外,在專案資料夾下/webapps/testApp/WEB-INF/新建web.xml檔案,新增
   
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
     version="2.4">
   <description>MySQL Test App</description>
      <resource-ref>
       <description>DB Connection</description>
       <res-ref-name>jdbc/testApp</res-ref-name>
       <res-type>javax.sql.DataSource</res-type>
       <res-auth>Container</res-auth>
   </resource-ref>
   </web-app>
  
2.7   建立JDBCtest.jsp,可以來檢測JDBC連線是否成功
      <%@ page
      language="java"
      contentType="text/html; charset=GB2312"
      pageEncoding="GB2312"
      %>
      <%@ page import="java.sql.*"%>
      <%@ page import="javax.sql.*"%>
      <%@ page import="javax.naming.*"%>
      資料庫連線池測試結果:
      <%
      out.println("JDBC驅動檢查<br>");
      try {
       Class.forName("com.mysql.jdbc.Driver");
       out.println("檢查成功!<br>");
      } catch (ClassNotFoundException cnfe) {
       out.println("JDBC驅動建立失敗!<br>");
       cnfe.printStackTrace();
      }
     
      out.println("<br>環境名稱空間檢查<br>");
      try {
       javax.naming.Context ctx = new javax.naming.InitialContext();
       javax.naming.Context envContext =
        (javax.naming.Context) ctx.lookup("java:/comp/env");
       out.println("檢查成功!<br>");
      
       out.println("<br>查詢資料來源<br>");
      // org.apache.commons.dbcp.BasicDataSource ds =
      //    (org.apache.commons.dbcp.BasicDataSource) envContext.lookup("jdbc/testApp");
        DataSource ds =(DataSource)ctx.lookup("java:comp/env/jdbc/testApp");
       out.println("查詢成功!<br>");
      // 早期版本可以用BasicDataSource接收以獲得比DataSource介面更具體的資訊,便於錯誤查詢
      
       out.println("<br>檢查資料庫<br>");
       Connection conn = ds.getConnection();
       DatabaseMetaData metaData = conn.getMetaData();
       ResultSet rs = metaData.getCatalogs();
       while (rs.next())
       out.println(rs.getString(1) + "<br>");
       rs.close();
      } catch (javax.naming.NamingException e) {
       out.println("環境變數上下文建立失敗!<br>");
       e.printStackTrace();
      } catch (SQLException e) {
       out.println("資料庫操作執行失敗!<br>");
       e.printStackTrace();
      }
    %>


   2.7 servlet對映,如果你不想通過/servlet/com.file.web.HelloWorld來訪問你的程式,新增對映是好方法,
   修改專案資料夾WEB-INFO/web.xml檔案,新增
  
<servlet>
     <servlet-name>HelloWorld</servlet-name>
     <servlet-class>com.file.web.HelloWorld</servlet-class>
   </servlet>
   <servlet-mapping>
     <servlet-name>HelloWorld</servlet-name>
     <url-pattern>/hello</url-pattern>
   </servlet-mapping>
  
   這樣就可以通過/hello來訪問servlet程式。


Setp 3   Apache安裝
----------------------------------------------------------------------------------

3.1 Apache 一路回車安裝即可
      敲入http://127.0.0.1就能看見歡迎介面。
      歡迎介面與2.0.x或者1.x不一樣,你看見的將是 It works!, 而不再是,您能看見這個頁面,說明您已經成功安裝之類的。

3.2 連線apache 與 tomcat,通過apache來解析靜態檔案,tomcat解析java確實不錯。
      如果你打算只用Tomcat做伺服器的話,那就不用安裝apache了,實際上Tomcat作為伺服器也非常好。
      當然了,整合apahce + tomcat 也不麻煩,主要是下載mod_jk.so檔案,和增加兩個配置檔案。
  
      3.2.1 下載 mod_jk.so (http://mirrors.ibiblio.org/pub/mirrors/apache/tomcat/tomcat-connectors/)
            參閱文章: http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html
                      http://tomcat.apache.org/connectors-doc/reference/workers.html
            這裡使用的是jk而不是jk2,下載得到的是mod_jk-apache-2.2.4.so檔案,可以根據apache版本來選擇合適的。
            將下載檔案copy至Apache的modules目錄下
            
     3.2.2 新建workers.properties,便於管理就在apache2/conf下,加入下面內容
    
          JkAutoAlias E:/Tomcat6/webapps     #tomcat絕對路徑webapps目錄
          JkMount /*.jsp ajp13
           JkMount /*/servlet/ ajp13
   
   
     3.2.3   新建mod_jk.conf檔案,也放在apache2/conf目錄下,加入下面內容
          # Load mod_jk module
          LoadModule jk_module modules/mod_jk-apache-2.2.4.so
          
          # Where to find workers.properties
          JkWorkersFile conf/workers.properties    #對剛新建的workers.properties檔案
          
           # Where to put jk logs
          JkLogFile logs/mod_jk.log
          
           # Set the jk log level [debug/error/info]
          JkLogLevel info
          
           # Select the log format
          JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
          
           # JkOptions indicate to send SSL KEY SIZE,
          JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
          
           # JkRequestLogFormat set the request format
          JkRequestLogFormat "%w %V %T"
          
           # Send servlet for context /examples to worker named ajp13
          JkMount /servlet/* ajp13     
           # Send JSPs for context /examples to worker named ajp13
          JkMount /*.jsp ajp13
           JkMount /*.do ajp13
          
           # 增加testApp目錄,把改目錄下所有檔案全部交給tomcat處理,
           # JkMount /testApp/* ajp13
           # 也可以根據需要來設定,比如只把testApp/*.jsp交給tomcat處理
          JkMount /testApp/*.jsp ajp13
     
    3.2.4   修改conf/httpd.conf檔案,把mod_jk.conf檔案include裝載進來,新增如下
          
          Include conf/mod_jk.conf
           #jarry add for contact to tomcat  
          
           給apache新增testApp目錄
          
           #新增testApp
           Alias   /testApp "e:/testApp"
           <Directory   "e:/testApp">  
                   Options   Indexes   MultiViews  
               Options Indexes FollowSymLinks Includes ExecCGI
                   AllowOverride   None           
                   Order   allow,deny    
                   Allow   from   all    
           </Directory>
          
           重啟apache,
           通過http://172.18.101.17:8080/testApp/http://172.18.101.17/testApp/
           都能訪問Tomcat專案,說明整合成功。
           也可以建立一個jsp檔案來測試,如果不用8080埠能直接解析,那說明整合成功。   
           如果出現問題注意檢視,apache/logs/下的log檔案,仔細對照,一般就能解決啦。              
                                    

Setp 4 MySql安裝
----------------------------------------------------------------------------------

MySql與Apache一樣,一路回車即可。
MySql5.x 與 4.x 安裝區別不大,5.x會提示配置Mysql一些屬性,諸如語言啦。根據需要設定即可。
啟動通過mysql/bin下鍵入 mysql -uroot -p或者從選單欄MySQL Command Line Client進入到命令列。
      4.1 從程式選單找到mysql命令列或在mysql/bin目錄下,執行mysql -uroot -p密碼就可以進入mysql
      Enter password:
      Welcome to the MySQL monitor.   Commands end with ; or /g.
      Your MySQL connection id is 42 to server version: 5.0.27-community-nt
     
      Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
     
      mysql>

     
      4.2 敲入 /s 可以檢視MySql版本資訊
      mysql> /s
      --------------
     E:/MySQL5/bin/mysql.exe   Ver 14.12 Distrib 5.0.27, for Win32 (ia32)
     
      Connection id:           42
      Current database:
      Current user:           
root@localhost
      SSL:                     Not in use
      Using delimiter:         ;
      Server version:          5.0.27-community-nt
      Protocol version:        10
      Connection:              localhost via TCP/IP
      Server characterset:     gbk
      Db      characterset:     gbk
      Client characterset:     gbk
      Conn.   characterset:     gbk
      TCP port:                3306
      Uptime:                  2 days 4 hours 52 min 9 sec
     
      Threads: 2   Questions: 382   Slow queries: 0   Opens: 28   Flush tables: 1   Open ta
      bles: 0   Queries per second avg: 0.002

     
     
================================================================================

總的說來,安裝新版與老版本差不多,只是一時相容性不是太好。
不過用來開發和學習,使用新版還是挺不錯的,可以學到新的方法和東西,新版本整合更容易些
而如果部署對外的服務,還是採用經典或是成熟的版本吧。:)
安裝過程要多看apache官方網站的文件,http://tomcat.apache.org/tomcat-6.0-doc/
通過文件就可以詳細瞭解安裝步驟了,出錯了也好檢查,版本不同配置等難免會有一點不同,這是看官方文件就很重要了。

參考資料:
http://jiarry.bokee.com/2375369.html
http://jiarry.bokee.com/2425368.html

下載文件:
http://jarryli.googlepages.com/Jdk1.6Tomcat6Apache2MySql5Install.txt

vv 

相關文章