歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux管理 >> Linux服務 >> 零基礎在Linux服務器上部署javaweb項目

零基礎在Linux服務器上部署javaweb項目

日期:2017/3/1 12:03:02   编辑:Linux服務

一.安裝JDK

1、首先要查看服務器的系統版本,是32位還是64位

#getconf LONG_BIT
64

2、下載64位版本的jdk

下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

版本:jdk-8u91-linux-x64.rpm

3、使用ftp工具如FileZilla,xftp,winscp,將下載好的文件傳到服務器上,我是傳到了home文件夾

4、查看當前有沒有安裝jdk

#rpm -qa |grep jdk
jdk-1.7.0_65-fcs.i586

?
#rpm -qa |grep jdk
jdk-1.7.0_65-fcs.i586
?

如果有就移除

#rpm -e jdk-1.7.0_65-fcs.i586

5、輸入安裝命令,無須賦予權限,可以直接執行

#rpm -ivh /home/jdk-8u91-linux-x64.rpm
6、設置環境變量(在文件末尾加入)

#vim /etc/profile
 
export JAVA_HOME=/usr/java/jdk1.8.0_91
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASSPATH PATH
7、輸入命令檢查是否已經安裝設置好(無須重啟服務器)

#java -version
#java
#javac

二.Tomcat的配置部署

1、下載tomcat

選擇core下面的tar.gz包下載

2、上傳和安裝

我是把上傳的軟件都放在了home文件夾,解壓即可實現安裝,安裝目錄我放在了/usr/local下面

#tar -zxvf apache-tomcat-8.0.9.tar.gz //解壓文件
#cp -R apache-tomcat-8.0.9 /usr/local/tomcat //移動和重命名
3、啟動和測試
#./startup.sh  //在tomcat的bin目錄下執行此命令,顯示下面的信息
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.7.0_67
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

測試:訪問http://ip:8080,查看是否成功,如果不成功,檢查端口情況

#netstat -ano|grep 8080

如果端口被占用,可以修改/conf/server.xml 裡的端口號

用./stratup.sh啟動看不到詳細的日志信息,如果想看詳細信息,可以用./catalina.sh run啟動,就可以像中一樣查看啟動信息了

4、在/usr/local/tomcat/bin下有可執行程序
啟動tomcat # ./startup.sh
關閉tomcat # ./shutdown.sh

三.java web應用的部署

把web應用在eclipse裡面export成war包文件並復制到tomcat/wabapps目錄下
將被引用的項目的文件夾也考到tomcat/wabapps目錄下
關閉後再次啟動tomcat
訪問時輸入http://ip地址:8080/war文件名稱/....
例如war文件名為wapinfo.war
則輸入http://ip地址:8080/wapinfo/....
進行訪問


四.mysql數據庫的安裝和配置

1、下載數據庫軟件

地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads

我這裡因為是64位的操作系統,所以選擇下載如下rpm包:

MySQL-server-5.6.30-1.linux_glibc2.5.x86_64.rpm

MySQL-client-5.6.30-1.linux_glibc2.5.x86_64.rpm

MySQL-devel-5.6.30-1.linux_glibc2.5.x86_64.rpm

2、將這些rpm包通過FileZilla上傳到Linux服務器的某個目錄,例如:/usr/local/mysql。

3、在路徑/usr/local/mysql下使用如下命令開始安裝MySQL服務器:

rpm -ivh MySQL-server-5.6.30-1.linux_glibc2.5.x86_64.rpm
4、服務端安裝完成後,使用如下命令安裝MySQL客戶端,命令如下:
rpm -ivh MySQL-client-5.6.30-1.linux_glibc2.5.x86_64.rpm
5、接著安裝MySQL-devel-5.6.30-1.linux_glibc2.5.x86_64.rpm,命令如下:

rpm -ivh MySQL-devel-5.6.30-1.linux_glibc2.5.x86_64.rpm
6、安裝完成後mysql是沒有啟動的,運行mysql命令會提示如下錯誤:

[root@AY130221101729bc93912 software]# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
可使用如下命令啟動MySQL:

service mysql start
或者使用如下命令:

/etc/init.d/mysql start

7、使用mysql命令登錄MySQL服務器,運行MySQL的命令時,會提示需要設置root用戶密碼,提示信息如下:

[root@AY130221101729bc93912 mysql]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.6.10

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

可使用SET PASSWORD命令修改root用戶的密碼,參考如下:

mysql> SET PASSWORD = PASSWORD('root');
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+

8、設置開機自啟動的方法有很多,例如使用chkconfig命令,另外也可以在/etc/rc.local文件中加上如下MySQL的啟動命令,例如:

/etc/init.d/mysql start


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

創建遠程登陸用戶並授權,在mysql的命令提示行輸入以下命令:

mysql > use mysql;
mysql > grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456';
mysql > exit;



上面的語句表示將 discuz 數據庫的所有權限授權給 ted 這個用戶,允許 ted 用戶在 123.123.123.123 這個 IP 進行遠程登陸,並設置 ted 用戶的密碼為 123456 。

all PRIVILEGES 表示賦予所有的權限給指定用戶,這裡也可以替換為賦予某一具體的權限,例如:select,insert,update,delete,create,drop 等,具體權限間用“,”半角逗號分隔。

discuz.* 表示上面的權限是針對於哪個表的,discuz 指的是數據庫,後面的 * 表示對於所有的表,由此可以推理出:對於全部數據庫的全部表授權為“*.*”,對於某一數據庫的全部表授權為“數據庫名.*”,對於某一數據庫的某一表授 權為“數據庫名.表名”。

ted 表示你要給哪個用戶授權,這個用戶可以是存在的用戶,也可以是不存在的用戶。

123.123.123.123 表示允許遠程連接的 IP 地址,如果想不限制鏈接的 IP 則設置為“%”即可。

123456 為用戶的密碼。

執行了上面的語句後,再執行下面的語句,方可立即生效。

flush privileges;

----by:songfayuan 2016-04-29

Copyright © Linux教程網 All Rights Reserved