CentOS 7 java伺服器搭建
1. jdk的安裝
現在jdk的版本已經更新到 jdk-8u77多了,但是由於很多東西跟不上,所以一般的人或者公司現在基本上還在用(7),像spring3.2這樣的8就不支援,所以我這裡安裝的 jdk-7u45-linux-x64.tar.gz
(1)檢視原來是否安裝過jdk
# java -version #檢視伺服器是否安裝過jdk
java version "1.6.0_17"
OpenJDK Runtime Environment (IcedTea6 1.7.4) (rhel-1.21.b17.el6-i386)
OpenJDK Client VM (build 14.0 -b16, mixed mode)
# rpm -qa |grep gcj #檢視伺服器安裝的jdk軟體包資訊
libgcj-4.4.4-13.el6.i686
java-1.5.0-gcj-1.5.0.0-29.1.el6.i686
# yum -y remove java-1.5.0-gcj-1.5.0.0-29.1.el6.i686 #解除安裝軟體包
(2)安裝jdk
解壓配置安裝
# mkdir -p /usr/local/java
# 然後把你的壓縮包放到這個檔案下/usr/local/java
# tar zxvf jdk-7u45-linux-x64.tar.gz #解壓你的壓縮包
(3)配置環境變數
# cp /etc/profile /etc/profile.bak #備份
# vi /etc/profile #編輯,在最後新增下面的內容
export JAVA_HOME=/usr/local/java/jdk1.7.0_45
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
# source /etc/profile #使配置檔案立即生效
(選裝)有時候可能有些需要這個依賴(你可以先測試一下再決定是否安裝這個)進入jdk-1.7.0_45,執行下面程式碼
#yun install glibc.i686 #安裝的依賴(是線上安裝)
(4)測試
# java -version # 測試是否成功
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) Client VM (build 23.5-b02, mixed mode)
顯示如上到此就成功安裝好jdk 了
2 . tomcat的安裝
(1)apache-tomcat-8.0.26.tar.gz的安裝
# mkdir /usr/local/tomcat
# cd /usr/local/tomcat
# tar -zxvf apache-tomcat-8.0.26.tar.gz
生成連結以便版本升級
# ln -s apache-tomcat-8.0.26 server
(2)啟動tomcat
#cd /usr/local/tomcat/bin
# ./startup.sh #tomcat的啟動
# ./shutdown.sh #tomcat的停止
(3)開啟防火牆使外部能夠訪問(一般不需要)
# /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
# service iptables save
# service iptables restart
測試
輸入 主機IP:8080 #出現tomcat頁面表示成功
(4)如果需要修改埠
# cd /usr/local/tomcat/conf
# ls
# vim server.xml
# 把裡面的8080全部修改成需要修改的埠
3 . mysql的安裝
(1)解除安裝舊版本
# rpm -qa | grep mysql #查詢現在mysql的版本
# rpm -e mysql #普通刪除
# rpm -e --nodeps mysql #如果上面的不能刪除成功 就用這個強力刪除
( 2 ) mysql5.5X以上版本安裝均需要採用cmake安裝方式,需要先安裝cmake工具
# mkdir /usr/local/cmake
# cd /usr/local/cmake
# tar zxvf cmake-2.8.10.2.tar.gz
# cd cmake-2.8.10.2
# ./configure
# make
# make install
# cd ~
# vi /etc/profile
export PATH=/usr/local/mysql/cmake-2.8.10.2/bin:$PATH #新增這句話
#source /etc/profile #更新配置
(3)解壓mysql原始碼並進入目錄
# tar xzvf mysql-5.6.14.tar.gz
# cd mysql-5.6.14
(4)確認編譯環境是否具備
yum -y install gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool*
(5)建立使用者和使用者組與賦予資料存放目錄的許可權
# groupadd mysql
# useradd -g mysql mysql
# chown -R mysql.mysql /usr/local/mysql/
(6)建立mysql的安裝目錄和資料目錄
安裝目錄# mkdir /usr/local/mysql
資料儲存# mkdir /usr/local/mysql/data
(7) 進行編譯安裝,配置編譯引數
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysqld.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=root \
-DMYSQL_TCP_PORT=3306
配置的時候這一步卡了很久如果(7)出現錯誤(少部分)使用下面這個
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1
上面的執行成功後執行如下命令
# make && make install #時間挺久的
(8) 進入安裝路徑建立資料自帶的資料庫和表
# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
注意:在啟動MySQL服務時,會按照一定次序搜尋my.cnf,先在/etc目錄下找,找不到則會搜尋”$basedir/my.cnf”,在本例中就是 /usr/local/mysql/my.cnf,這是新版MySQL的配置檔案的預設位置!注意:在CentOS 7版作業系統的最小安裝完成後,在/etc目錄下會存在一個my.cnf,需要將此檔案更名為其他的名字,如:/etc/my.cnf.bak,否則,該檔案會干擾原始碼安裝的MySQL的正確配置,造成無法啟動。
(9)啟動mysql
新增服務,拷貝服務指令碼到init.d目錄,並設定開機啟動
# cp support-files/mysql.server /etc/init.d/mysql
# chkconfig mysql on
# service mysql start #啟動MySQL
(10)配置環境變數
# vi /etc/profile
# 新增如下程式碼
PATH=/usr/local/mysql/bin:$PATH
export PATH
# source /etc/profile
(11)進入mysql並設定密碼
mysql -uroot
mysql> SET PASSWORD = PASSWORD('你的密碼');
(12)設定遠端訪問
方法 1 是設定只用你允許的那個ip才能夠訪問,其他的不能訪問
方法 2,3 所有的都能訪問
方法1 Sql程式碼 > GRANT ALL PRIVILEGES ON *.* TO 'root'@'你允許的ip地址' IDENTIFIED BY '' WITH GRANT OPTION;
方法2 Sql程式碼 > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密碼' WITH GRANT OPTION;
方法3 Sql程式碼 mysql> use mysql; mysql> update user set host = '%' where user = 'root';