之前寫安卓app數據存儲都是用的本地數據庫比如sqlite或者sharepreferences,雖然實現了數據持久化但是弊端也很大,如果卸載了app之前的用戶數據就會沒有了,所以跟風租了阿里雲的服務器,準備用來放數據庫(不過如果僅僅是放數據庫,bmob的後端雲就挺好的,安利一下)。但是實際上雲服務器的用處遠不止放數據庫,雲服務器就像一臺計算機,但是自己的計算機可能會斷電,很多程序可能帶不動,所以雲服務器就很適合用來掛一些需要長時間運行的程序比如爬什麼數據之類的或者建網站建論壇等等。
一、購買服務器
首先註冊阿里雲賬號,實名認證後才能購買雲服務器,所以推薦支付寶賬號登陸,可以繞過實名認證步驟,登陸時可以直接用支付寶掃一掃,無需輸入賬號密碼。如果是小於24歲的話可以自動獲取學生身份,學生雲服務器可以說是相當優惠了,這裏選用輕量應用服務器就可以了。
阿里雲學生雲服務器產品鏈接
預裝環境根據自己的需求選擇,如果是寫網站的話用linux系統比較合適,比如Ubuntu或者CentOS,建博客的話wordpress比較合適,但是阿里雲可以隨時更換系統的(國內節點),所以具體選什麼不用太糾結。這裏我選擇了Ubuntu,因爲個人感覺linux更強大,而Ubuntu是一個以桌面應用爲主的Linux操作系統,從興趣出發學習linux的首選一般都是ubuntu。(其實最開始選的是windows,因爲對windows更熟悉,但是配了半天沒配好,然後剛好下學期選了linux的課,所以最後換了linux)
地域有三個選項,華南1,華北2,華東2,三個節點都可以在大陸使用,也是自己根據個人條件選擇,這裏我選擇了華南1。
-
華南1(深圳)對整個廣東地區可以很好風服務和覆蓋,不過廣西等地連接則會繞到華東1再回到華南1,這就比較尷尬了。
推薦服務地域:廣東省、深圳市,華北2,華東2 -
華北2(北京)由於是華北的骨幹網絡,因此華北乃至其他地區如東北、西北連接華北二2基本上是不會出現繞路情況的對於海外訪問也是直連的。
推薦服務地域:整個北方地區 -
華東2(上海)是南方地區的骨幹網絡,也是國際網絡的骨幹節點,可以拿來做國際路由的中轉,也可以服務上海以及江蘇、安徽等地。
推薦服務地域:上海爲主的華東地區。
點擊立即購買,支付成功後可在控制檯查看和管理。
控制檯
二、服務器連接
1.windows
如果雲服務器預裝的是windows的話,有兩種方法可以連接到服務器桌面
-
使用瀏覽器發起安全連接
-
通過遠程桌面工具連接
遠程連接
官方說明文檔有說明了,但是如果你的電腦本身是win10系統的話在使用遠程桌面連接時可能會彈出錯誤提示
進去以後大致是說你的windows版本更新了一個補丁,但是你要遠程連接的系統沒有更新那個補丁,所以不匹配。
如果是專業版的話,修改組策略中的一個配置就可以了。在運行中輸入gpedit.msc,然後打開計算機配置>管理模板>系統>憑據分配>加密Oracle修正,選擇啓用選擇易受攻擊。
如果是家庭版的話沒有自帶的修改組策略,比較麻煩,網上解決方法也很多,思路主要有以下幾種
- 刪除win10更新的安全補丁
在控制面板中刪除對應的補丁,注意要關閉自動更新,win10關閉自動更新,否則重啓後依然會重新更新補丁。 - 升級服務器的安全補丁(可以通過控制檯瀏覽器遠程連接的情況下)
阿里雲控制檯–服務器–遠程連接登陸服務器後,點擊服務器左下角開始菜單–選擇控制面板–點擊右下角以小圖標顯示–找到windows update–檢查更新–安裝更新,更新後重啓服務器 - 設置修改組策略
新建文本輸入程序改爲以.cmd結尾然後雙擊
2.linux
如果安裝的是linux系統,可以參考官方的說明文檔遠程連接到Linux操作系統實例,但是更推薦另一個良心博主的教程,更加詳細,而且之後登陸服務器更方便。按照前面的步驟配置搭建Linux雲端Python環境
但是我在使用vncserver的時候還是碰到了之前安裝windows時一樣的問題,按弟弟的流程在vnc viewer中創建連接後並沒有理論中的圖形化桌面而是如圖效果:
猜測應該是vnc的配置文件有問題,然後通過安裝相應桌面環境後更改vnc配置文件成功解決,下面兩種都親測有效。
- ubuntu16.4使用vnc鏈接gnome桌面
如果使用GNOME桌面,更改xstartup文件如下:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
x-window-manager &
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
- Ubuntu 15.04 安裝VNCServer, Xfce4桌面與配置
如果使用xfce4桌面,更改xstartup文件如下:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
具體思路都差不多,安裝相應環境等再修改vnc配置,之後重啓vnc再通過vnc viewer連接。
注:如果你是完整安裝了的話打開瀏覽器是不會出現中文亂碼的,就不需要重複安裝語言包了(自己還瞎試了好多別的教程安裝了一堆,莫名感覺浪費了好多空間?)
三、安裝jdk
首先在官網下載linux環境下的jdk,Java SE Downloads注意下載時tar.tz格式壓縮包。然後用filezilla將本地下載好的壓縮包傳到服務器root/local目錄下。爲了方便可以直接用filezilla新建目錄/root/.local/jvmlib。
然後將jdk解壓到新建的目錄/root/.local/jvmlib下
sudo tar zxvf jdk-11.0.1_linux-x64_bin.tar.gz -C /root/.local/jvmlib
將目錄下的jdk-11.0.1重命名爲java,也可以直接用filezilla重命名。
cd /root/.local/jvmlib
sudo mv jdk-11.0.1 java
然後啓用編輯
vim ~/.bashrc
輸入i進入編輯後在下面插入以下內容編輯環境變量,編輯完之後按esc退出編輯,再輸入 :wq保存更改後退出
export JAVA_HOME=/root/.local/jvmlib/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
在終端輸入source ~/.bashrc使更改生效,然後輸入java -version查看jdk版本信息以驗證jdk是否安裝成功
出現以上信息則說明jdk安裝成功。
四、mysql數據庫
1.安裝mysql數據庫
在終端輸入命令
sudo apt-get install mysql-server
安裝期間會彈出y/n確認,輸入y,然後會彈出設置密碼,輸入自己要設置的數據庫密碼後按enter再重新輸入一遍後enter,注意最好不要忘記這個密碼。
然後在終端輸入
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
sudo netstat -tap | grep mysql
如果mysql的socket處於listen狀態說明安裝成功
然後可以登陸數據庫
mysql -u root -p
u表示用戶名,p表示前面安裝時你輸入的密碼。
至此本地mysql安裝成功。
2.使用navicat遠程連接mysql數據庫
先編輯 /etc/mysql/my.cnf,將bind-address=127.0.0.1註釋掉因爲127.0.0.1是本地,只有註釋掉或者修改爲0.0.0.0才能允許別的ip地址訪問
然後重啓mysql
sudo /etc/init.d/mysql restart
然後打開mysql,授權用戶能進行遠程連接,如表示想要root用戶使用密碼13456789從任何主機連接到mysql服務器。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456789' WITH GRANT OPTION;
然後打開navicat新建連接,連接名隨意,主機或ip地址輸入你的公網ip地址,端口3306,用戶名root,密碼輸入上一步允許遠程訪問連接所設的密碼即可。
這樣就可以直接利用navicat來管理數據庫了。
五、安裝tomcat
首先在官網下載tomcat,Apache Tomcat,注意下載時選擇的版本應與jdk版本匹配,選擇tar.tz格式壓縮包。然後用filezilla將本地下載好的壓縮包傳到服務器root/.local目錄下,同時新建一個目錄root/.local/tomcat
修改tomcat文件夾權限,然後將tomcat解壓到/root/.local/tomcat,重命名爲tomcat9
sudo chmod -R 777 /root/.local/tomcat
sudo tar zxvf apache-tomcat-9.0.14-src.tar.gz -C root/.local/tomcat
sudo mv apache-tomcat-9.0.14-src tomcat9
然後給tomcat配置jdk的位置
cd root/.local/tomcat/tomcat9/bin
vim catalina.sh
輸入i進入編輯模式,添加以下內容
JAVA_HOME=/root/.local/jvmlib/java
#JAVA_HOME設置爲之前配置的jdk位置
JAVA_OPTS="-server -Xms512m
-Xmx1024m -XX:PermSize=600M
-XX:MaxPermSize=600m
-Dcom.sun.management.jmxremote"
CATALINA_HOME=/root/.local/tomcat/tomcat9
CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
esc後 : wq保存修改。
類似的修改startup.sh和shutdown.sh文件,
vim startup.sh
vim shutdown.sh
在最下面一行上方添加如下代碼並保存。
JAVA_HOME=/root/.local/jvmlib/java
JRE_HOME=${JAVA_HOME}/jre
PATH=${JAVA_HOME}/bin:$PATH
CLASSPATH=.:${JAVA_HOME}lib:${JRE_HOME}/lib
CATALINA_HOME=/root/.local/tomcat/tomcat9
建議看一下tomcat9目錄下有沒有logs目錄,如果沒有的話用filezilla新建一個
否則會報如下錯誤
root@iZnufaxd8l1xl8Z:~/.local/tomcat/tomcat9/bin# ./catalina.sh: 1: eval: cannot create /root/.local/tomcat/tomcat9/logs/catalina.out: Directory nonexistent
然後進入tomcat9/bin文件夾下執行命令啓動tomcat
sudo ./startup.sh
(未完待續,前面的還可以,最後面的tomcat建議看別的教程叭)
注: 如果vnc連接出現雪花屏或者提示too many security failures,把這個連接殺掉再建一個就好了
vncserver -kill :1
vncserver :1
參考資料
搭建Linux雲端Python環境
ubuntu16.4使用vnc鏈接gnome桌面
Ubuntu 15.04 安裝VNCServer, Xfce4桌面與配置
阿里雲Windows服務器無法遠程連接的解決辦法