Linux 下安装 java 环境(jdk + mysql + tomcat)

时间:2022-06-15 05:42:33

Linux选用的是 centOS 6.8 64位 ,最先要将 centOS 中自带的 jdk 和 myqsql 卸载掉。

首先安装 了 SSH,通过 SSH 将 jdk,mysql,tomcat 的压缩包拷贝到 centOS 中,如下图:

Linux 下安装 java 环境(jdk + mysql + tomcat)

1 . 安装 jdk 并配置环境变量

查看当前系统是否安装过jdk:

rpm -qa | grep java

如果有 jdk,使用 “rpm -e --nodeps 要卸载的软件名” 命令进行卸载;

然后通过 SSH 的命令行工具进行安装,我首先在 /usr/local 下建立了三个目录,分别是 jdk_home,mysql_home,tomcat_home,

分别将三个压缩包解压到对应目录,然后进行安装。

[root@msym local]# mkdir jdk_home mysql_home tomcat_home
[root@msym local]# ll
总用量 52
drwxr-xr-x. 2 root root 4096 9月 23 2011 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x. 3 root root 4096 7月 2 04:38 jdk_home
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib64
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxr-xr-x. 2 root root 4096 7月 2 04:54 mysql_home
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 7月 1 01:10 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
drwxr-xr-x. 3 root root 4096 7月 2 04:43 tomcat_home
[root@msym local]#

然后在切入到 /soft目录下,解压三个文件:

[root@msym local]# cd /soft
[root@msym soft]# ll
总用量 358292
-rw-r--r--. 1 root root 8900571 11月 3 2014 apache-tomcat-7.0.57.tar.gz
-rw-r--r--. 1 root root 143398235 9月 30 2014 jdk-7u71-linux-i586.tar.gz
-rw-r--r--. 1 root root 214579200 11月 24 2014 MySQL-5.6.22-1.el6.i686.rpm-bundle.tar
[root@msym soft]# tar -xvf jdk-7u71-linux-i586.tar.gz -C /usr/local/jdk_home/
[root@msym soft]# tar -xvf apache-tomcat-7.0.57.tar.gz -C /usr/local/tomcat_home/
[root@msym soft]# tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql_home/

上面的三个文件解压之后,jdk 和 tomcat 算是安装好了一半了,jdk 还需要配置全局环境变量,tomcat 还需要在防火墙中开启 8080 端口以供外界访问。

然后配置jdk环境变量,使用 vim 打开 /etc/profile 配置文件,将下面配置拷贝进去

#set java environment
JAVA_HOME=/usr/local/jdk_home/jdk1.7.0_71
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

上面代码的含义很简单,和 windows下一样,

  1. 给 jdk 安装目录取个别名
  2. 将 lib 下的工具 jar 添加到 classpath 中
  3. 将 jdk 安装目录添加到全局 path 中

重新加载 /etc/profile 配置文件,使用“ source /etc/profile”命令,然后输入 java -version:

[root@msym soft]# java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) Client VM (build 24.71-b01, mixed mode)
[root@msym soft]#

显示出 jdk 版本就说明 jdk 安装好了。

后来又安装了 scala, 步骤和安装 jdk一毛一样 .

2 . 安装 mysql

安装 mysql 实在难倒我了,各种依赖问题还没解决。

等解决了在粘上来。

我直接用了 windows 下的 mysql。实在是解决问题,把练手项目给部署在虚拟机的 centOS 中,然后 windows进行访问,这点我也是比较佩服我自己的。【  Linux 下安装 java 环境(jdk + mysql + tomcat)

等 centOS 下的 mysql 安装成功了再改掉数据库地址。

3 . 配置 tomcat

需要开启 Linux 的对外访问的端口 8080,输入如下命令:

[root@msym soft]# /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
[root@msym soft]# /etc/rc.d/init.d/iptables save
iptables:将防火墙规则保存到 /etc/sysconfig/iptables: [确定]
[root@msym soft]#

启动 tomcat 之后,就可以在虚拟机外面访问 centOS 中的 tomcat 了,输入的 ip 地址是在 centOS 中查到的 IP 地址。

Linux 下安装 java 环境(jdk + mysql + tomcat)

Tomcat 安装好了之后就可以将工程导出的 war 包放到 webapps 目录下了。

安装过程中碰到的问题:

安装 jdk 和 Tomcat 到没有什么问题,只要提前把自带的 jdk 卸载就好了。

安装 mysql 时,添加 mysql 的依赖时出现了下面的错误:

[root@msym mysql_home]# yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
省略很多行... Protected multilib versions: libstdc++-4.4.7-18.el6.i686 != libstdc++-4.4.7-17.el6.x86_64
错误:Protected multilib versions: libgcc-4.4.7-18.el6.i686 != libgcc-4.4.7-17.el6.x86_64

出现这个错误是因为多个库的冲突,

在添加依赖时,追加上 --setopt=protected_multilib=false 就可以了,

[root@msym mysql_home]# yum install zlib-1.2.3-29.el6.i686  --setopt=protected_multilib=false

在安装 mysql-server 时,出现了缺少安装包libaio的错误,

[root@msym mysql_home]# rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
error: Failed dependencies:
libgcc_s.so.1 is needed by MySQL-server-5.6.22-1.el6.i686
libgcc_s.so.1(GCC_3.0) is needed by MySQL-server-5.6.22-1.el6.i686
libgcc_s.so.1(GLIBC_2.0) is needed by MySQL-server-5.6.22-1.el6.i686
libstdc++.so.6 is needed by MySQL-server-5.6.22-1.el6.i686
libstdc++.so.6(CXXABI_1.3) is needed by MySQL-server-5.6.22-1.el6.i686
libstdc++.so.6(GLIBCXX_3.4) is needed by MySQL-server-5.6.22-1.el6.i686
libstdc++.so.6(GLIBCXX_3.4.11) is needed by MySQL-server-5.6.22-1.el6.i686
libstdc++.so.6(GLIBCXX_3.4.9) is needed by MySQL-server-5.6.22-1.el6.i686

1