1. 程式人生 > >java搭建阿里雲伺服器環境(java環境+mysql+tomcat)和部署 JavaWeb 專案到雲伺服器(十分詳細)

java搭建阿里雲伺服器環境(java環境+mysql+tomcat)和部署 JavaWeb 專案到雲伺服器(十分詳細)

文章有不當之處,歡迎指正,如果喜歡微信閱讀,你也可以關注我的微信公眾號:好好學java,獲取優質學習資源。

購買一系列的東西

其實就是花錢買塊區域,伺服器,域名,雲解析,花了好多money。。。

一、租伺服器

百度搜索阿里雲

進入官網首頁,點選登入

進入登入頁面,可以使用郵箱登入或者註冊

進入註冊頁面,填寫註冊資訊

登入成功,進入主頁,點選雲服務ECS,點選購買推薦或者選購配置

根據實際情況選擇產品,可能沒有貨,那麼就需要更改購買條件

如果是新使用者,購買前要實名認證,根據提示完成認證後才能下訂單

二、購買域名

點選域名/域名列表


點選域名註冊

查詢域名

列表中會顯示該域名是否已經被註冊,沒有被註冊的域名後面有加入清單按鈕

加入清單後,就可以去結算了

雲解析基礎版可以選購,選好了點選立即購買即可

點選解析,進入解析頁面,不知道怎麼用就點新手引導設定


點選設定網站解析的立即修改,將域名與ip關聯上即可

設定好了就會看到

三、備案

點選備案,這個好麻煩啊,我備案還有那麼多事。。

進入備案頁面

點選登入備案系統,進入登入頁面(這個是備案系統,單獨的)

搭建阿里雲伺服器環境

我進行遠端連線伺服器的時候,用的是SecureCRT和filezilla這連個,一個是上傳檔案用的,一個是連線用的。

一、使用SecureCRT連線centos。

注意剛剛買到伺服器後第一次登陸可能登陸不進去,這個時候只需要到控制檯重啟一下即可。


然後需要輸入密碼,如果沒有密碼到控制檯修改密碼

二、安裝JDK。

Java 的 JDK 有 2 套,一是 Oracle 的 JDK,另一個就是 OpenJDK 了。我選擇的是 OpenJDK 來作為 Java 的開發環境。本人是使用 SecurityCRT 操作雲伺服器上的 CenOS6.5 來進行安裝配置的。

2.1、檢視可用軟體包

CentOS 6.X 和 5.X 自帶有 OpenJDK runtime environment(openjdk),我們使用 yum 來檢視 CenOS 下可用的 open-jdk 軟體包列表,執行命令:yum search java | grep -i –color JDK
1

2.2、安裝

檢視到了所有可用的安裝包後,我們選擇自己需要的進行安裝。我選擇的是 Java8。執行命令:yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel


2
3

看到 Complete 後就知道安裝完成了,那麼現在來測試一下是否安裝成功。執行命令:java -version
4

:也可以使用 javac 來作為測試命令,網上有些說還要設定java環境變數,其實到這裡已經就可以了,不用再到etc/profile中設定java環境。

三、安裝tomcat。

centos其實可以使用最簡單的yum install tomcat就可以了。這裡我就介紹我的方法。

3.1、準備資源

3.1.1、filezilla登入


登陸上去之後,直接拖到右邊就可以了。

我們需要先準備好 Tomcat8 的壓縮包。本人是先在本地下載好 Tomcat8,然後利用 FileZilla 傳到遠端伺服器下。
11

3.2、解壓

使用 tar 命令,對 Tomcat 的壓縮包進行解壓。執行命令:tar -zxvf apache-tomcat-8.0.0.RC3.tar.gz

3.3、移動

解壓完畢後,我們需要將解壓後的目錄移動到 /usr/local 目錄下。執行命令:mv apache-tomcat-8.0.0 /usr/local
12

3.4、重新命名

為方便記憶以及日後的使用,我們將該資料夾使用 mv 命令重新命名為 tomcat8.執行命令:mv apache-tomcat-8.0.0 tomcat8
13

3.5、配置 JAVA-HOME

其實這步也可以不用的,因為你可以直接到bin目錄下面啟動就行。

編輯 /usr/local/tomcat/bin/catalina.sh 檔案,配置 JAVA-HOME 變數,讓 Tomcat 可以搜尋到 JDK 的目錄,與其一起工作。
14

3.6、啟動服務

現在,我們來啟動 tomcat 來試試。使用 cd 命令切換到 /usr/local/tomcat8/bin/ 目錄下,然後執行命令:./startup.sh
15

3.6、開放埠

啟動好服務後,我們還需要開放 8080 埠。注:HTTP 協議預設使用 80 埠,而 Tomcat 預設使用 8080 埠。
16

3.7、測試

上面的配置完成後,檢查一下 Tomcat 的執行情況。執行命令:ps -ef | grep tomcat
17
接著,開啟瀏覽器,測試下。本地機器測試則在位址列上輸入 http://localhost:8080;若是遠端機器,則輸入 http://遠端伺服器IP:8080 來檢視結果。
18


三、安裝mysql

解決方法:

如果你走運噴到了這個問題,那麼點進去看看我的解決方法

3.1、安裝mysql

我們使用 yum 來安裝 mysql,執行命令 yum install mysql-server. 若機器上沒有安裝好,就會自動安裝,出現 Complete 就表示成功安裝。若是已經安裝,就會出現如下情況:
yun-mysql1

3.2、檢視安裝

我們可以使用 rpm 命令來檢視 mysql 的安裝情況:執行命令 rpm -qa | grep mysql*
yun-mysql2

3.3、啟動服務

安裝好了,那我們就試著啟動一下 mysql 服務好了:執行命令 service mysqld start
注意:是 mysqld,而不是 mysql

yun-mysql3

3.4、測試 mysql

mysql 的服務已經啟動好了,那麼我們來測試一下,它是否能正確運行了?啟動好後,我們來進入 mysql 中試著操作一下。執行命令:mysql
yun-mysql4
註釋:\q 命令指關閉連線,退出 mysql

四、配置 mysql

正確安裝後,我們需要對 mysql 進行一些測試,方便我們日後的工作。

4.1、開機自啟

我們首先來設定 mysql 開機自啟。為什麼要設定呢?因為每次關機重啟後,mysql 服務都會被停止,處於 stop 狀態,這時要使用 mysql,就得執行 service mysqld start 命令,比較繁瑣,所以設定一下開機自啟,可以減少麻煩。

我們利用 chkconfig 命令來設定 mysql 開機自啟:執行命令 chkconfig mysqld on
yun-mysql5

通過 chkconfig –list 命令可以看到各服務的情況,從中可以看到 mysql 的情況:執行級別為2、3、4、5的情況下都是on(開啟)的狀態

[各狀態的解釋]
  等級0表示:表示關機
  等級1表示:單使用者模式
  等級2表示:無網路連線的多使用者命令列模式
  等級3表示:有網路連線的多使用者命令列模式
  等級4表示:不可用
  等級5表示:帶圖形介面的多使用者模式
  等級6表示:重新啟動




4.2、開啟 3306 埠

對於 mysql,我們知道一般都是使用 3306 埠。在我們 Java 程式的資料庫連線中,可以看到 jdbc:mysql://localhost:3306/dbname 的語句。因此,在 Linux 下,我們需要開放 3306 埠,以便本機和外部訪問 mysql。執行命令:

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save

yun-mysql6

4.3、修改密碼

一般而言,我們都會啟動密碼認證。因此我們給使用者設定一下密碼。進入 mysql,執行命令:update user set password=password(‘密碼’) where user=’使用者名稱’; 以此來給使用者設定密碼

yun-mysql7
yun-mysql8

4.4、配置遠端登入

有一種需要,叫遠端登入mysql。因此,我們也配置一下 mysql 的遠端登入。該設定,同樣是需要先進入 mysql 資料庫,然後再執行命令 grant all privileges on . to ‘root’@’%’ identified by ‘root’ with grant option;
yun-mysql9

命令詳解:
  # 將所有許可權賦予給 root 使用者,允許其進行遠端登入
  grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
  引數解釋:
  ① all privileges:賦予所有的許可權給指定使用者,也可以替換為賦予某一具體的許可權
  ② *.*:所賦予的許可權是針對全部資料庫的全部表。若指定某一具體資料庫的具體表,如:thinkphp_user
  ③ root:表示給root使用者授權
  ④'%':表示不限制連線的 IP。若想只允許某特定的 IP 進行遠端登入,可以改為具體 IP。
  ⑤ by 'root':root 使用者的密碼

設定好遠端登入後,我們測試一下是否可以遠端登入。在本地機器執行遠端登入命令如下:

# 連線時需要驗證密碼
mysql -h 遠端機器IP地址 -P 3306 -u 使用者名稱 -p thinkphp
# 在登入的時候直接寫上密碼,p 和密碼不能分開
mysql -h 遠端機器IP地址 -P 3306 -u 使用者名稱 -p密碼 thinkphp


五、部署javaweb專案

我們要部署 Java Web 專案,那就至少得將專案上傳到雲伺服器。其實過程很簡單,基本上也就是下面三個步驟
① 打包上傳:將專案打包成 war 檔案,然後利用 FileZilla 傳到遠端伺服器
② 部署:使用 cp 或 mv 命令,將 war 檔案移動到 Tomcat 目錄下的 webapps 下
③ 重啟 Tomcat,訪問我們的專案

5.1、上傳專案war包


5.2、移動到tomcat的webapps目錄中


在這個過程中,我們需要注意。因為一般而已,作為一個 Web 專案,我們肯定是有資料庫的使用的。那麼資料庫部分怎麼辦呢?其實,只需要將我們已有的資料庫轉儲為 sql 檔案,然後將 sql 檔案上傳到雲伺服器上執行即可。以 mysql 為例,如下操作:

5.3、Mysql 案例

轉儲為 sql 指令碼,並上傳:先在本地將我們專案使用的資料庫轉為 sql 檔案,上傳到雲伺服器上
mysql-thinkphp1

執行 sql:然後進入 mysql 中執行該 sql 檔案
mysql-thinkphp2

發現執行的時候有錯。原因是我們此時的 mysql 中沒有 thinkphp 這個資料庫。我們檢視下當前的資料庫,執行命令 show databases;
mysql-thinkphp3

發現確實沒有 thinkphp 這個資料庫,因此我們建立一個,執行命令 create database thinkphp;
mysql-thinkphp4
再次執行
mysql-thinkphp5

發現還是報錯。原因是我們當前使用的是 mysql 這個資料庫,而不是 thinkphp 資料庫。因此我們切換到 thinkphp 資料庫,執行命令 use thinkphp;,然後再一次執行 sql 檔案:
mysql-thinkphp6

檢視結果
mysql-thinkphp7

部署專案:將專案部署到 Tomcat 容器中,還是使用 cp 或 mv 命令將 war 檔案移到 /usr/local/tomcat8/webapps/ 下,重啟 Tomcat,再訪問即可。

到這裡完整的部署過程就到這裡了,希望對大家有幫助。