linux上mysql 和 tomcat部署web应用总结

1.环境准备

1.1软件下载

我们的系统主要是java平台编写的,选择的架构是tomcat 做为web服务器,mysql做了数据库服务,因此需要先下载tomcat和mysql的安装包。 由于26是linux系统,那我们就要下载tomcat for linux和mysql for linux 版本。具体下载过程不详述,相信大家都知道,下面提供两个链接,以方便下载。

Mysql5.5.23   http://dev.mysql.com/downloads/mysql/5.5.html#downloads

Tomcat 7.0    http://tomcat.apache.org/download-70.cgi

这里我都是下载tar.gz版本的,下面以这两种版本讲下安装配置过程。

1.2用户配置

用户配置主要是建立mysql用户,oa用户,作为安装部署使用。也许大家会问为什么要建用户呢,这就是linux系统的安全性等机制决定的,具体这里不详细,也许我也讲不清楚!闲话少说,具体看下面操作,使用root用户登录26主机,输入以下命令:

[root@fzdev ~]# groupadd  mysql

[root@fzdev ~]# useradd  oa  -g  mysql  -G  dba  –d  /home/oa  -p  oa26

[root@fzdev~]#useradd   mysql  -g  mysql  -G  dba  -p  mysql26  -s  /sbin/nologin  -M

 这里oa用户的profile配置不详述,主要是一些环境变量,以及系统变量的配置,下面配置TOMCAT_HOME时会有提到一些。

2.软件安装

Download下来的mysql 和 tomcat的版本分别为 mysql-5.5.33-linux2.6-x86_64.tar.gz apache-tomcat-7.0.42.tar.gz。下面我们开始安装配置。

2.1 mysql安装配置

1.   把这两个文件拷贝到服务器上,这边是放在/home/oa目录中。

2.   复制mysql-5.5.33-linux2.6-x86_64.tar.gz文件到/usr/local下,使用命令:

[root@fzdev ~]# cp  –rf  mysql-5.5.33-linux2.6-x86_64.tar.gz  /usr/local/

3.   然后进入/usr/local目录,解压文件:

[root@fzdev ~]# tar  -xzvf  mysql-5.5.33-linux2.6-x86_64.tar.gz

4.   创建软连接:ln  -s  mysql-5.5.33-linux2.6-x86_64   /usr/local/mysql

5.   安装mysql默认数据库:

[root@fzdev ~]#cd  /usr/local/mysql/scripts

[root@fzdev ~]# mysql_install_db  - - user=mysql

终端上会打印出:

Installing MySQL system tables...

OK

Filling help tables...

OK

.....

即说明安装成功。

6. 修改目录权限:

[root@fzdev ~] cd /usr/local

[root@fzdev ~] chgrp -R    mysql     mysql-5.5.33-linux2.6-x86_64 

[root@fzdev ~] chgrp -R    mysql     mysql

[root@fzdev ~] chown      -R    mysql     mysql-5.5.33-linux2.6-x86_64

[root@fzdev ~] chown      -R    mysql     mysql/data

7. 添加mysql服务到系统自启动:

[root@fzdev ~] cp      /usr/local/mysql/support-files/mysql.server             /etc/rc.d/init.d/mysqld

[root@fzdev ~] chkconfig        - - add   mysqld

8.启动mysql服务进程:

[root@fzdev ~] /etc/init.d/mysqld start

如果屏幕上有提示Starting Mysql…….. [ok],则代表服务正常启动了。

9. 查看启动状态是否成功,可以通过查看端口,或者进程是否存在:

[root@fzdev ~]netstat      -anp|grep    LISTEN

[root@fzdev ~]ps      -ef|grep      mysql

10. 给mysql的root用户指定密码为root26,host为localhost:

[root@fzdev ~] cd /usr/local/mysql/

[root@fzdev ~] bin/mysqladmin     --socket=/var/lib/mysql/mysql.sock      --port-3306   -u    root         -h  localhost      password  ‘root26’

共中mysql.sock 可以通过vi  /etc/my.cnf查看具体路径。

11. 登录数据库:

[root@fzdev ~] mysql  -h  localhost  -u  root  -p 

[回车]后显示输入密码提示,如下:

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 96

Server version: 5.5.33 MySQL Community Server (GPL)

 

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

mysql>

 

如果看到以上信息,代表登录数据库成功,至此就完成了mysql的安装配置。

2.2 tomcat安装配置

Tomcat的安装配置相对mysql来说还是比较简单的,但前提是需要安装jdk,这边26环境上之前有安装了jdk了,那这里我就不详述了,其他jdk的安装过程和tomcat也差不多,下面开始安装配置。

1.      解压包装包:

fzdev#[/home/oa] tar  -xzvf  apache-tomcat-7.0.42.tar.gz

2.      配置环境变量:

fzdev#[/home/oa] vi   .bash_profile

添加以下配置信息,保存并退出:

export  JAVA_HOME=/home/bea/jdk160_05

export TOMCAT_HOME=/home/oa/apache-tomcat-7.0.42

CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib 
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin 
export PATH CLASSPATH JAVA_HOME

输入.  filename  命令激动配置,或者重新登录:

fzdev#[/home/oa] .   .bash_profile

3.      启动tomcat:

fzdev#[/home/oa] cd /home/oa/apache-tomcat-7.0.42/bin

fzdev#[/home/oa] startup.sh

4.      检查tomcat是否正常启动,可以通过日志查看,或者在浏览器中访问tomcat的默认管理地址查看状态,URL为http://localhost:8080/,日志的默认地址为$TOMCAT_HOME/logs/catalina.out

5.       关闭tomcat:

fzdev#[/home/oa] shutdown.sh

 

3.部署应用

3.1部署应用

一切准备就绪,可以开始部署我们的应用

上传OA项目到$TOMCAT_HOME的webapps目录下,然后再到bin目录下,执行startup.sh命令,启动服务,tomcat会自动加载应用并部署。

 

 

4.FAQ

以上都是正常的安装配置流程,如果有遇到问题时,就没有那么顺利了,这边记录下这次遇到的一些问题,以及解决方案,希望可以有个帮助,同时,有其他问题,希望大家可以不断补充完善!

1. 问题描述:navicat连接不了mysql服务端,使用连接测试时连接不上,而mysql服务启动正常,本机也可以正常使用。

问题分析:同linux的安全机制类似,mysql同样有相关的规则限制远程访问;

解决方法:在服务器中使用root用户登录mysql,修改user表的信息,具体操作如下:

[root@fzdev ~]# mysql  -h  127.0.0.1  -u  root  -p

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 103

Server version: 5.5.33 MySQL Community Server (GPL)

 

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

mysql>use mysql;

mysql>update user set host=’%’  where  user=’root’;

mysql>select  host,user  from  user;

 

mysql> select host,user from  user;

+--------------+------+

| host         | user |

+--------------+------+

| %            | root |

| 127.0.0.1      | root |

| 192.168.1.26   | root |

| fzdev          |    |

| fzdev          | root|

| localhost       |    |

+--------------+------+

6 rows in set (0.00 sec) 

这个%说明任意主机可以使用root访问当前server。此法称为改表法,还有其他相关的方法,可以参考网上资料。

2.   问题描述:应用数据查询出来后界面展示乱码;

      问题分析:可能是由于linux下的mysql数据库的编码问题导致的;

 解决方法:在my.cnf文件中的mysqld节点下添加以下的配置信息,并重启服务:

character-set-server=utf8   

collation-server=utf8_general_ci

3.  问题描述:mysql无法启动,tomcat无法启动等端口限制问题;

     问题分析:由于linux存在的控制访问机制,需要配置防火墙,添加相关信息;

解决方法

[root@fzdev ~]# cd /etc/sysconfig

[root@fzdev sysconfig]# vi iptables

添加配置,保存并退出:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

保存到系统配置,重启防火墙服务:

[root@fzdev sysconfig]# /etc/rc.d/init.d/iptables save

[root@fzdev sysconfig]# service iptables restart

猜你喜欢

转载自javalinjx.iteye.com/blog/1937123