CentOS7上部署Tomcat和MySQL

一、安裝tomcat

Tomcat 的安裝依賴 JDK,在安裝 Tomcat 之前需要先安裝 Java JDK。輸入命令 java -version,如果顯示 JDK 版本,證明已經安裝了 JDK。

JDK安裝好後,接下來下載並解壓tomcat安裝包。

配置端口號,進入 tomcat 的 conf 目錄下,修改 server.xml 文件,可以修改端口,默認 8080。

啓動 tomcat,進入 tomcat 的 bin 目錄下:

如果訪問 http://ip:8080/ 失敗,查看防火牆開放端口:

firewall-cmd --zone=public --list-ports

 如沒有8080,添加8080:

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

 至此,http://ip:8080/ 應該可以訪問了。見下圖:

二、安裝MySQL

1.在安裝之前,爲防止重裝,所以先卸載MySQL。

yum方式:

查看yum方式是否安裝過MySQL。

如或顯示了列表,說明系統中有MySQL。

yum卸載。根據列表上的名字進行卸載:

yum remove mysql-community-client.x86_64  mysql-community-common.x86_64  mysql-community-libs.x86_64  mysql-community-server.x86_64 mysql57-community-release.noarch
rm -rf /var/lib/mysql  
rm /etc/my.cnf

 rpm查看安裝。

rpm 卸載:

rpm -e mysql-community-common-5.7.23-1.el7.x86_64
rpm -e mysql-community-server-5.7.23-1.el7.x86_64
rpm -e mysql-community-libs-5.7.23-1.el7.x86_64
rpm -e mysql57-community-release-el7-10.noarch
rpm -e mysql-community-client-5.7.23-1.el7.x86_64
cd /var/lib/  
rm -rf mysql/

 清除餘項:

whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/local/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
#刪除上面的文件夾
rm -rf /usr/bin/mysql

 刪除配置:

rm –rf /usr/my.cnf
rm -rf /root/.mysql_sercret

 剩餘配置檢查:

chkconfig --list | grep -i mysql
chkconfig --del mysqld

 2.安裝MySQL。

yum安裝,先要搞到源。

wget http://repo.mysql.com/mysql57-community-release-el7-9.noarch.rpm
sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm

 更新yum軟件包:

yum check-update 

 更新系統:

yum update

 安裝mysql:

yum install mysql mysql-server

 接下來是漫長的等待。如果中途關機,或者下載掛了,請執行卸載步驟後,再來一次。

完成後,記住要給root上密碼。如果使用中發現:

這是因爲,爲了加強安全性,MySQL5.7爲root用戶隨機生成了一個密碼,在error log中,關於error log的位置,如果安裝的是RPM包,則默認是/var/log/mysqld.log。

一般可以通過log_error設置。可以通過# grep "password" /var/log/mysqld.log 命令獲取MySQL的臨時密碼。

用該密碼登錄到服務端後,必須馬上修改密碼,不然會報如下錯誤:

如果只是修改爲一個簡單的密碼,會報以下錯誤:

這個其實與validate_password_policy的值有關。

validate_password_policy有以下取值:

Policy Tests Performed
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file

默認是1,即MEDIUM,所以剛開始設置的密碼必須符合長度,且必須含有數字,小寫或大寫字母,特殊字符。

有時候,只是爲了自己測試,不想密碼設置得那麼複雜,譬如說,我只想設置root的密碼爲123456。

必須修改兩個全局參數:

首先,修改validate_password_policy參數的值:

這樣,判斷密碼的標準就基於密碼的長度了。這個由validate_password_length參數來決定。

其中,validate_password_number_count指定了密碼中數據的長度,validate_password_special_char_count指定了密碼中特殊字符的長度,validate_password_mixed_case_count指定了密碼中大小字母的長度。

這些參數,默認值均爲1,所以validate_password_length最小值爲4,如果你顯性指定validate_password_length的值小於4,儘管不會報錯,但validate_password_length的值將設爲4。

如果修改了validate_password_number_count,validate_password_special_char_count,validate_password_mixed_case_count中任何一個值,則validate_password_length將進行動態修改。

當然,前提是validate_password插件必須已經安裝,MySQL5.7是默認安裝的。

那麼如何驗證validate_password插件是否安裝呢?可通過查看以下參數,如果沒有安裝,則輸出將爲空。

給root更改密碼:

systemctl start mysqld mysql -u root 
mysql> update mysql.user set authentication_string=password('new_password') where user='root' and Host ='localhost'; 
mysql> flush privileges; 
mysql> quit;

3.遠程連接MySQL

另外,我們可以將在VMware的centOS中安裝的MySQL配置爲支持遠程連接。

在CentOS7中執行:

service iptables start/stop

 會報錯:

Failed to start iptables.service: Unit iptables.service failed to load: No such file or directory.

 可以採取傳統的防火牆管理方式。執行以下命令:

systemctl stop firewalld
systemctl mask firewalld

 安裝iptables-services:

yum install iptables-services

 設置開機啓動:

systemctl enable iptables
systemctl stop iptables
systemctl start iptables
systemctl restart iptables
systemctl reload iptables 

保存設置:

service iptables save

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

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