Linux基礎3:CentOS7安裝配置JDK、Mysql 和Tomcat服務器環境

前言:推薦使用yum指令自動安裝JDK、Tomcat以及MariaDB數據庫(Mysql的分支),它可以讓你免受配置各種環境變量之苦,安裝完直接就可以用,無需配置。

開發環境:虛擬機 Centos7.7 mininal

安裝版本:JDK1.8+Mysql 5.7+Tomcat 8.5

一、傳統安裝方式,捨棄

下載上傳安裝包麻煩,有時還需要配置環境變量

以安裝JDK舉例,Tomcat和Mysql類似:

1、首先去對應軟件的官網下載安裝包的rpm或tar壓縮格式

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

下載jdk-8u152-linux-x64.rpm 或 jdk-8u152-linux-x64.tar.gz(根據自己的系統位數選擇對應的包)

2、使用Xftp客戶端工具將下載好的jdk-8u152-linux-x64.rpm或tar.gz上傳到CentOs上去

用rpm命令安裝: rpm -ivh jdk-8u152-linux-x64.rpm,不需要配置環境變量

手動解壓JDK的壓縮包,然後設置環境變量:tar -zxvf  jdk-8u152-linux-x64.tar.gz

二、Centos7下使用yum源安裝JDK

Centos7中安裝Java環境,在安裝前先查看有無安裝過Java環境。直接運行java 命令,會提示命令未找到,則是沒有安裝過java環境。

1.查看yum源的java包

yum list java*

2.安裝jdk1.8

yum -y install java-1.8.0-openjdk


安裝完成後會在最下面顯示完成

3.查看版本,檢測安裝是否成功

java -version

若出現上述提示表示JDK已經成功安裝啦!

三、Centos7下使用yum源安裝Mysql5.7

現在CentOS上默認是沒有Mysql的yum源,yum源默認的是 MariaDB。所以我們需要自己先配置Mysql yum源。

MariaDB閒談:

MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,採用GPL授權許可。開發這個分支的原因是:自從Sun被Oracle收購以後,原來Sun旗下的MySQL的所有權也落入Oracle的手中。MySQL未來存在閉源的潛在風險,因此社區採用分支的方式來避開這個風險。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕鬆成爲MySQL的代替品。

過去一年中,大型互聯網用戶以及Linux發行商紛紛拋棄MySQL,轉投MariaDB陣營。MariaDB是MySQL的創始人Michael Widenius另起爐竈開發了完全兼容MySQL的數據庫系統。它是目前最受關注的MySQL數據庫衍生版,也被視爲開源數據庫MySQL的替代品。Centos7的發行版默認就包含了MariaDB。

1、更換yum源安裝Mysql5.7

a、下載並安裝MySQL官方的 Yum Repository

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

rpm -Uvh mysql57-community-release-el7-11.noarch.rpm

執行完成後會在/etc/yum.repos.d/目錄下生成兩個repo文件mysql-community.repo mysql-community-source.repo

b、查看有哪些版本的mysql

yum repolist all | grep mysql

c.yum安裝Mysql

我默認使用安裝mysql5.7

yum install -y mysql-community-server

至此MySQL就安裝完成了

2.啓動Mysql,驗證是否安裝成功

要知道在centos7中,沒有了service命令,都是使用systemctl命令。(centos6中,使用service mysqld start)

systemctl start mysqld  注意啓動的時候是start mysqld而不是mysql。
systemctl status mysqld  查看Mysql運行狀態

如圖所示已經啓動Mysql了,接下來會進行Mysql相關配置。

3.MySQL數據庫的配置

3.1、登錄數據庫,修改數據庫密碼

mysql5.7的新特性之一就是在初始化的時候會生成一個自定義的隨機密碼,然後你需要找到這個臨時密碼,登錄的時候輸入。注意,輸入密碼的時候是不顯示。

a、啓動Mysql

systemctl start mysqld

b、找到密碼: 紅框的地方就是密碼

grep 'temporary password' /var/log/mysqld.log

c、找到了密碼之後,輸入以下指令進入數據庫

mysql -u root -p

此時不能做任何事情,因爲MySQL默認必須修改密碼之後才能操作數據庫。

d、修改密碼

#這裏的'new password'即爲你自己要更改的密碼。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

這裏有個問題,新密碼設置的時候如果設置的過於簡單會報錯。 原因是因爲MySQL有密碼設置的規範,具體是與validate_password_policy的值有關。

此時,通過進行這兩個操作即可.(設置密碼的驗證強度等級爲弱)

set global validate_password_policy=0;  
set global validate_password_length=1;

然後在進行密碼的設置,就成功了.

上面提到Mysql密碼設置規範的validate_password_policy,詳細請參考:安裝MySQL報錯 : Your password does not satisfy the current policy requirements

3.2、設置Mysql支持遠程連接

Mysql爲了安全性,在默認情況下用戶只允許在本地登錄,可是在有此情況下,還是需要使用用戶進行遠程連接。比如我的VMware的CentOS7中安裝的MySQL需要支持遠程連接方便數據庫備份,現在這樣是無法在本地用工具比如Navicat for Mysql登錄訪問的。

MySQL默認是沒有開啓遠程控制的,必須添加遠程訪問的用戶,即默認是隻能自己訪問,別的機器是訪問不了的。現在要做兩件事,第一件事是將雲服務器上的3306端口開放;另一件事是配置Mysql遠程可以訪問。

①先設置剛纔的密碼可以遠程登錄,然後使用flush命令使配置立即生效。

#允許root用戶在任何地方進行遠程登錄,並具有所有庫任何操作權限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Admin123!' WITH GRANT OPTION; 

#重載授權表
flush privileges; 

②雲服務器開放3306端口

Mysql默認監聽端口就是3306

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload  

注意:如果還不行可以嘗試重啓一下數據庫

 這時,在本地電腦的navicat 上的連接遠程的MySQL,顯示連接成功:

參考鏈接:Centos7下無法遠程連接mysql數據庫的原因與解決

3.3.Mysql其他簡單配置

Mysql的配置文件真的很多,有的還很蛋疼。比如默認的字符集是拉丁字符集,每次創建數據庫的時候要設置字符集;默認還不支持group by語句,默認的時區也不是我們現在的北京時間(東八區),會導致我們的時間差了13個點。針對以上說幾個簡要的配置,更多的配置在以後遇到了再加上。

先輸入exit退出數據庫客戶端。
打開配置文件,yum安裝的默認在/etc文件夾下:
vim /etc/my.cnf

在[mysqld]下面添加,不需要分號

字符集:注意是utf8而不是utf-8!

character-set-server=utf8

這時候使用show variables like 'char%';就可以查看到字符集都是utf8了

sql支持group by語句

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

設置時區爲東八區

default-time_zone = '+8:00'

a、設置安全選項:

mysql_secure_installation
b、關閉MySQL

systemctl stop mysqld
c、重啓MySQL

systemctl restart mysqld
d、查看MySQL運行狀態

systemctl status mysqld
e、設置開機啓動

systemctl enable mysqld
f、關閉開機啓動

systemctl disable mysqld
g、配置默認編碼爲utf8:

vi /etc/my.cnf #添加 [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8'

其他默認配置文件路徑:

配置文件:/etc/my.cnf 日誌文件:/var/log//var/log/mysqld.log 服務啓動腳本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid
h、查看版本

select version();

最後重啓數據庫,使配置生效

systemctl restart mysqld

四、Tomcat8的安裝

1.首先需要下載tomcat8.5的安裝文件,下載後綴爲tar.gz的版本

Tomcat下載地址:https://tomcat.apache.org/download-80.cgi

2、然後需要將下載的壓縮文件上傳至服務器,可以用rz命令來上傳(輸入後選擇本地文件上傳).若輸入後顯示


則需要先在遠程CentOS服務器中,yum -y install lrzsz ,安裝後使用.

選擇剛剛下載的安裝包上傳

3、接着對上傳的壓縮包進行解壓

tar -zxvf apache-tomcat-8.5.45.tar.gz

4、Tomcat解壓完就可以運行
解壓完成後,進入剛剛解壓的文件夾,可打開Tomcat。

cd apache-tomcat-8.5.45/bin
./startup.sh

5、瀏覽器打開:http://192.168.0.8:8080  出現以下界面說明成功

 

萬一不能訪問到如下界面,請參考鏈接:Centos7 可以啓動tomcat但無法訪問的問題

 

注意補充:上面的Tomcat8.5採用的是XShell本地上傳安裝包到遠程CentOS解壓運行,其實可以用更簡單的方法,往下看

1、先到tomcat官網https://tomcat.apache.org/查看下載路徑

 我下載的tomcat-8.5.37 如: http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.tar.gz

2、安裝wget,並讓wget下載Tomcat安裝包,後面步驟同上解壓運行Tomcat即可

yum install -y wget

wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.tar.gz

參考鏈接:

CentOS7下安裝Java、MySQL、Tomcat

CentOS 7 yum安裝與配置 Tomcat

Centos安裝Tomcat8.5的最優姿勢

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章