文章中使用centos(6和7版本)、Xshell、Xftp
因爲部署過程直接從操作服務器開始,如果你還沒有連接好服務器請參考http://blog.csdn.net/ctrlxv/article/details/79054941
好,現在就當你已經有自己的服務器了,並且連接好了服務器和可以進行簡單的服務器操作了;首先應該明白要想部署java web項目到服務器中,並且可以通過瀏覽器訪問到你部署的java web項目需要安裝jdk、tomcat、mysql;下面通過兩種安裝方法(安裝包解壓安裝、yum源安裝)來安裝上面三個軟件,具體步驟如下:
注:在安裝軟件之前需要查看下系統中是否已經安裝了此軟件(如:java --version 判斷是否安裝java,安裝了會輸出版本號)
一、安裝配置jdk1.8(tomcat的運行依賴jdk,所以先安裝)
0、使用命令“java -version”看系統中是否安裝了jdk,如果沒有任何輸出說面沒有安裝,否則輸出已安裝版本;已安裝請跳過,或者使用命令“rpm -e 軟件名”進行卸載;
1、點擊鏈接http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html進入官網、下載指定的安裝包如下:
2、安裝下載到任意目錄
3、將下載的安裝包通過Xftp上傳到服務器中(也可以是其它可行的方法)
注:文件上傳不清楚的參考http://blog.csdn.net/ctrlxv/article/details/79054941
4、通過Xshell登錄到服務器中進入指定壓縮包所在目錄,使用命令“tar -zxvf 壓縮包名”進行解壓縮到當前目錄,如下:
解壓完成出現對應的文件夾,如下:
現在壓縮包已經沒有用了,可以刪除,也可以留着,刪除使用rm命令,如下:
5、配置jdk環境變量
使用"vim /etc/profile"進入profile文件按“i”進入插入模式,在文件的最後添加如下信息:
export JAVA_HOME=/opt/jdk1.8.0_151(jdk的安裝目錄)
export CLASSPATH=.:$JAVA_HOME/jre/ib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
最後按Esc進入命令模式,鍵入:wq保存並退出文件:
6、測試jdk是否安裝成功
使用命令“java -version”查看剛安裝的jdk版本;還可以鍵入:java或javac將輸入一串信息說明安裝成功。
二、安裝配置Tomcat9
1、點擊鏈接 https://tomcat.apache.org/download-90.cgi 進入Tomcat官網選擇版本下載core中的tar.gz包:
2、將下載好的壓縮包通過Xftp上傳到服務器中,然後進行解壓,最後刪除壓縮包:(具體步驟同jdk的安裝)
3、Tomcat的配置(同jdk,在/etc/profile文件末尾加上下面配置)
4、安裝配置完成,現在需要測試Tomcat之前的步驟是否成功:
進入tomcat的安裝目錄下的bin目錄使用命令“./startup.sh”開啓tomcat服務,見如下信息開啓成功:
在任意瀏覽器中訪問http://207.148.64.46:8080/,出現Tomcat的主頁面說明安裝配置成功。
注:如果服務器正常啓動了但不能進行訪問,可能是服務器沒有將8080(tomcat默認端口)對外公開(默認不公開),需要到服務器管理控制檯進行“添加安全組規則”開放8080端口。(具體操作請百度)
三、MySQL的安裝配置(使用yum源安裝)
0、安裝前準備:
因爲在 centos 6 和 centos 7 中安裝使用 mysql 有比較大的不同,所以在安裝之前需要清楚系統環境;首先使用 cat /etc/redhat-release 命令查看系統發佈版本;使用 rpm -qa | grep maria 命令查看是否安裝了 mariadb 軟件(類似mysql的數據庫軟件,完全兼容mysql,在 centos 7 中默認已經安裝),如果安裝了需要進行卸載再進行安裝 mysql,否則會出現安裝衝突的錯誤。(下面實例以 centos 7 爲例)
0-1、卸載 mariadb 軟件:(沒安裝此軟件跳過)
使用命令 yum remove mariadb-libs -y 卸載,完成後再進行查看是否存在,沒有進行下一步;
1、首先需要查看系統中是否存在要安裝的 mysql 的rpm包,使用如下命令:
yum list Mysql*(mysql*不行) ---> 沒有返回說明沒有安裝,否則返回已安裝的rpm安裝包(存在的話直接跳到第3步)
2、如果沒有就需要下載 mysql 的yum源安裝包:
注:要找到對應系統版本的package(我服務器是centos7的,所以使用el7的mysql安裝包)
點擊 https://dev.mysql.com/downloads/repo/yum/ 進入 mysql 的官網,如下圖所示:
然後使用 wget 執行如下命令進行yum源安裝包的下載:
wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
3、安裝 mysql 源
使用 yum localinstall mysql57-community-release-el7-11.noarch.rpm 命令進行安裝
4、檢查是否安裝成功
再次使用 yum repolist enabled | grep "mysql.*-community.*" 命令查看,出現如下界面,安裝成功:
注:可以使用 yum info mysql-community-server 查看 mysql 的詳細信息
5、安裝 mysql
使用 yum install mysql-community-server -y 命令安裝 mysql;
6、檢查 mysql 是否安裝成功
可以使用"mysql -V"或“musql --version”命令查看當前的版本;和使用 "systemctl status mysqld" 查看mysql服務的狀態;如下圖所示:安裝成功
注:當系統不是centos7版本時,上面查看狀態命令可能不起作用,需要使用 "service mysqld status"命令,如下:(我在這裏測試的是 6.9 版本)(開始服務、停止服務的命令同理)
7、登錄 mysql 服務
當首次登錄時有一個默認的登錄密碼,使用 grep ‘temporary password’ /var/log/mysqld.log 命令獲取默認密碼,(密碼爲輸出結果的最後一串字符)
默認密碼一般比較繁瑣,且不安全,可以對密碼進行修改,使用如下命令進行修改:
set password for 'root'@'localhost'=password('NewPassword'); 然後就可以使用 mysql -u root -p 進行登錄 mysql 了。
注:測試系統centos6.9 ,mysql5.1 ;使用上面的命令查找不出默認初始密碼,可以使用下面方法:
首先啓動 mysql 服務,然後查看服務的進程信息,使用 ps -ef | grep -i mysql 命令,找到 mysqld_safe 所在目錄(如下圖所示),然後停止服務;執行 /usr/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1& 命令,接着執行 /usr/bin/mysql -u root mysql 命令,後會出現 "mysql>" ,進入了 mysql ,現在 使用 update user set password=Password('你的密碼') where User='root'; 命令修改密碼,然後執行 flush privileges; 命令,然後就OK了,使用 exit 退出賬號,現在就可以使用 mysql -u root -p 命令輸入之前設置的密碼既可以使用了。具體實現如下圖:(密碼設置格式有具體要求,見下面第9點)
8、配置默認編碼
修改 /etc/my.cnf 配置文件,在文件中的 [mysqld] 下添加如下編碼設置:
character_set_server=utf8
init_connect='SET NAMES utf8'
9、查看密碼策略
使用 show variables like '%password%' 命令,會輸出如下密碼要求信息:
可以修改策略,進入 /etc/my.cnf 文件,在其中添加 validate_password=off 語句,表示取消密碼策略,重啓服務再次查詢時就不會有了;詳細有關策略的設置見:https://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html#sysvar_validate_password_policy 。
四、基本軟件安裝完成,現在可以真正部署項目到服務器中了:
實現過程其實和在window系統上一樣的設置,將編譯好的項目直接放到 Tomcat 下的 webapp 文件夾下,然後到瀏覽器中訪問就可以了,見下圖實現:
到這一個java web項目就結束了。
注意:當部署項目到服務器中,在瀏覽器中能訪問 Tomcat 首頁但當訪問項目時出現404錯誤時,可以在啓動 Tomcat 時使用 ./catalina.sh run 命令(可以查看到具體的服務器啓動日誌信息),可以很方便的查找出錯誤。
備註:可能用到的基礎命令(注:軟件安裝的路徑問題,下面命令以我自己的軟件安裝路徑爲例)
sh /opt/apache-tomcat-9.0.2/bin/startup.sh ---> 啓動 tomcat 服務
sh /opt/apache-tomcat-9.0.2/bin/shutdown.sh ---> 關閉 tomcat 服務
ps -ef | grep tomcat ---> 判斷tomcat是否啓動
sytemctl start mysqld 或 service mysqld start ---> 開啓mysql服務
sytemctl stop mysqld 或 service mysqld stop ---> 關閉服務
sytemctlstatusmysqld 或 service mysqld status ---> 查看當前服務狀態