阿里雲伺服器部署mysql、tomcat、jdk
文章目錄
使用的遠端連線工具SecureCRT。
一、mysql
1.如果是第一次開啟,需要更新一下。
[email protected]:~# sudo apt-get update
2.安裝mysql
[email protected]:~# sudo apt-get install mysql-server mysql-client
3.安裝過程中,會有兩次輸入使用者名稱和密碼的操作。
4.安裝完成之後,檢測是否安裝成功:
登入mysql伺服器:
[email protected]:~# mysql -u root -p
如果出現如下內容表示安裝成功。
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 17679 Server version: 5.5.54-0ubuntu0.14.04.1 (Ubuntu) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
exit/quit退出mysql資料庫。
5.修改資料庫編碼問題
檢視資料庫系統變數及其值:
mysql> show variables like '%character%';
正常情況下是這樣:
+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+
如果出現以下情況需要修改配置檔案
編輯mysql的配置檔案:
[email protected]:~# vim /etc/mysql/my.cnf
在[client]下加入default-character-set=utf8
在[mysqld]下加入character-set-server=utf8
在[mysql]下加入default-character-set=utf8
儲存後重啟mysql
[email protected]:~# service mysql restart
同時inert多條資料時,從第二條開始中文還是會亂碼,該問題暫未解決。
6.設定允許遠端訪問mysql資料庫
(1) 編輯資料庫的配置檔案
vim /etc/mysql/my.cnf
找到bind-address = 127.0.0.1,註釋掉,換為bind-address = 0.0.0.0,表示允許任意IP訪問。
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
(2) 重啟mysql。
(3) 授權使用者遠端訪問資料庫
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
root是使用者名稱,%表示所有電腦都能連線,password是遠端連線時的密碼。表示所有資料庫裡的所有表都授權給該使用者。
重新整理許可權資訊,讓剛才的配置生效。
mysql> flush privileges;
這樣就可以在本地操作伺服器上的資料庫了。
二、ubuntu 18.04 安裝mysql
sudo apt install mysql-server預設會安裝MySQL 5.7,將會出現一些莫名的問題,例如:安裝過程沒有要求輸入root密碼,而登入mysql時會要求密碼,就會登入不成功。
ubuntu 18.04 支援安裝mysql8.0以上的版本,以下為安裝mysql8.0版本的說明:
1.oracle官網下載mysql-apt-config_0.8.10-1_all.deb
檔案,上傳至伺服器/home/使用者
目錄下;
2.遠端登入伺服器,安裝下載的配置包:
sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb
在彈出的選擇框中選擇OK
,等待執行完畢.
3.更新系統:
sudo apt-get update
4.安裝mysql:
sudo apt-get install mysql-server
在安裝過程中輸入密碼,這裡有一步需要選擇加密的方式,注意選擇5.*版本 。
5. 啟動mysql服務:
service mysql start
6.設定資料庫允許遠端登入
(1) 首先進入mysql資料庫:mysql -u root -p
(2) 使用名字為mysql的資料庫:use mysql
(3) 查詢每個使用者的訪問許可權:select User,Host from mysql.user;
,返回內容如下:
+------------------+-----------+
| User | Host |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)
(4) 將root使用者的Host修改為%,或新建一個Host為%的使用者,即可以通過該使用者遠端登入。如下:
update user set host=’%’ where user=’root’;
flush privileges;
或
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
GRANT all privileges ON *.* TO `使用者名稱`@`host` with grant option;
update mysql.user set plugin = 'mysql_native_password' where user = '使用者名稱';
flush privileges;
7.修改Mysql的其他配置
進入/etc/mysql/mysql.conf.d/mysqld.cnf
(1) 允許最大連線數 增加max_connections=1000
(2) group by錯誤:增加sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
(3) 大小寫不敏感:增加lower_case_table_names=1
,該項修改後,重啟mysql會出錯,解決辦法:將資料庫資料儲存目錄下的所有檔案刪除後重新啟動mysql就可以成功了。
原因:該屬性只有在mysql資料庫初始化之前設定才會生效。
三、 修改資料庫資料儲存目錄
檢視當前資料儲存目錄:select @@datadir;
,返回如下結果。此時需要將資料儲存目錄修改為/home/data/mysql
,操作如下:
+-----------------+
| @@datadir |
+-----------------+
| /var/lib/mysql/ |
+-----------------+
1 row in set (0.00 sec)
1.為了確保資料的完整性,我們將在實際更改資料目錄之前關閉MySQL:
sudo systemctl stop mysql
2.將現有資料庫目錄複製到新位置:
sudo rsync -av /var/lib/mysql /home/data
3.rsync完成後,使用.bak副檔名重新命名當前資料夾並保留,直到我們確認移動成功為止:
sudo mv /var/lib/mysql /var/lib/mysql.bak
4.修改資料庫配置檔案中的datadir為新目錄:
vim /etc/mysql/mysql.conf.d/mysqld.cnf
修改以下配置:
datadir = /home/data/mysql
5.配置AppArmor訪問控制規則:
vim /etc/apparmor.d/tunables/alias
在檔案的底部增加:
alias /var/lib/mysql/ -> /home/data/mysql/,
6.要使更改生效,請重新啟動AppArmor:
sudo systemctl restart apparmor
7.重啟MySQL:
service mysql restart
8.注意:mysql的配置檔案的訪問許可權一定要為644,如果為777,mysql重啟會失敗。
四、mysql解除安裝
1.檢視mysql的所有依賴:
dpkg --list|grep mysql
2.刪除依賴:
sudo apt-get remove mysql-*
3.檢視殘留檔案:
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
五、ubuntu下mysql安裝佈局
/usr/bin 客戶端程式和mysql_install_db
/var/lib/mysql 資料庫和日誌檔案
/var/run/mysqld 伺服器
/etc/mysql 配置檔案my.cnf
/usr/share/mysql 字符集,基準程式和錯誤訊息
/etc/init.d/mysql 啟動mysql伺服器
六、jdk
1.在http://www.Oracle.com/technetwork/Java/javase/downloads/index-jsp-138363.html 上下載需要的jdk,我下載的是jdk-8u131-linux-x64.tar.gz,上傳到伺服器中
2.解壓縮。將jdk解壓到/usr/local目錄下
[email protected]:~# tar zxvf jdk-8u131-linux-x64.tar.gz -C /usr/local
3.配置環境變數
(1) 編輯配置檔案
[email protected]:~# vim /etc/profile
(2) 加入如下資訊
#set java environment
export JAVA_HOME=/usr/local/jdk1.8.0_131
export JRE_HOME=/usr/local/jdk1.8.0_131/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
(3) 儲存後執行
[email protected]:~# source /etc/profile
(4) 驗證:
[email protected]:~# java -version
如果出現如下資訊表示安裝成功
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
七、tomcat
1.在官網上下載tar.gz格式的安裝包。
2.解壓到指定資料夾
[email protected]:~# tar -zxvf apache-tomcat-7.0.77.tar.gz -C /usr/local
3.進入到tomcat的bin目錄下
[email protected]:~# cd /usr/local/apache-tomcat-7.0.77/bin/
執行
[email protected]:/usr/local/apache-tomcat-7.0.77/bin# vi setclasspath.sh
加入安裝的jdk的資訊
export JAVA_HOME=/usr/local/jdk1.8.0_131
export JRE_HOME=/usr/local/jdk1.8.0_131/jre
儲存即可。
在bin目錄下啟動tomcat伺服器:
./startup.sh
檢視當前tomcat程序:
[email protected]:/usr/local/apache-tomcat-7.0.77/bin# ps -ef|grep tomcat
殺掉程序:kill -9 程序號