环境简介:此应用系统使用2台8核16G的云虚拟机分别部署数据库应用服务,系统为红帽6.9版本,mysql版本为5.7.21。此虚拟机属于华为内部云,外部访问需要开通访问策略,特别是邮件功能是此系统的重要部分,需要开通邮件端口。

一、mysql安装

    a、下载rpm安装包

        mysql-5.7.21-1.el6.x86_64.rpm-bundle.tar

        # tar –xvf mysql-5.7.21-1.el6.x86_64.rpm-bundle.tar

        # ls –l

        mysql-community-common-5.7.21-1.el6.x86_64.rpm
        mysql-community-libs-5.7.21-1.el6.x86_64.rpm  
        mysql-community-devel-5.7.21-1.el6.x86_64.rpm 
        mysql-community-client-5.7.21-1.el6.x86_64.rpm
        mysql-community-server-5.7.21-1.el6.x86_64.rpm

    b、卸载rehat自带的mysql

        su - root
        rpm -qa | grep mysql
        rpm –e mysql-5.0.13 –nodeps

    c、按照以下顺序安装mysql

        rpm -ivh mysql-community-common-5.7.21-1.el6.x86_64.rpm
        rpm -ivh mysql-community-libs-5.7.21-1.el6.x86_64.rpm
        rpm -ivh mysql-community-devel-5.7.21-1.el6.x86_64.rpm
        rpm -ivh mysql-community-client-5.7.21-1.el6.x86_64.rpm
        rpm -ivh mysql-community-server-5.7.21-1.el6.x86_64.rpm

    d、配置mysql

        i. 配置my.cnf文件

        a) 设置mysql大小写不敏感

            在[mysqld]分组下增加如下配置:

            lower_case_table_names=1

        b) 设置字符集为utf8

            character_set_server=utf8

        c) 设置group_concat的最大长度

            group_concat_max_len=20240000

        d) 配置完成后重启服务

            #service mysqld restart

        e、更改数据文件保存位置

        更改mysql数据库文件路径,默认通过RPM包安装的Mysql设置的数据库数据文 件路径保存在/var/lib/mysql,该路径为系统的内盘,存储空间有限,为了适应生产环境中大数据量的要求,需要将数据文件保存指定目录,如/opt/mysql。

更改mysql数据文件路径,首先停止mysql服务,然后将/var/lib/mysql文件夹拷贝到/opt目录下,修改/opt/mysql拥有者,然后配置/etc/my.cnf文件,重新启动服务即可。

        #service mysql stop

        #cp –r /var/lib/mysql /opt

        #chown –R mysql /opt/mysql

        #vi /etc/my.cnf

    在[mysqld]下面首行加入(参数设置位置很重要,必须放置到其他参数前面)

        datadir=/opt/mysql

    f、设置root密码

        修改MySQL配置文件:vim /etc/my.cnf,在文件末尾加上:skip-grant-tables,保存后重启MySQL服务:service mysqld restart

        执行命令

        # mysql -u root –p 初次登录密码为空,直接回车

        修改密码,用户密码是在名为mysql的database下面,依次执行以下指令

        mysql> use mysql

        mysql> update user set password_expired='N' where user='root’;    

        mysql> update user set authentication_string=password('密码') where user=‘root’;

        mysql> flush privileges;

        即设置root密码成功

        将my.cnf配置文件之前加的跳过密码检测内容(skip-grant-tables)去掉,重启服 务。

    g、创建应用数据库,执行刷库脚本

    上传脚本至mysql用户目录,连接root数据库

        #use –uroot –phuawei --“root”数据库,“huawei”数据库密码

        mysql> source /home/mysql/ initData.sql

二、应用系统安装

    a、安装JDK

        下载JDK安装包,本次使用的JDK为:jdk-6u32-linux-x64.bin

        i. 新建安装目录

        mSupport JDK安装目录在/opt/java

        #mkdir java

        ii. 下载安装包(jdk-7u17-linux-x64.tar.gz)到安装目录(/opt/java)中

        iii. 解压java包

        # tar –zxvf jdk-7u17-linux-x64.tar.gz

        iv. 配置环境变量

        ² 配置环境变量需要root账号编辑/etc/ profile 配置文件,并增加可编辑权限,这类配置主要针对单个终端起作用,这次用户登录后使用JAVA命令时都需要source /etc/ profile 配置文件才能生效。

        #chmod +w /etc/ profile 

        #vi /etc/ profile 

        然后在profile 文件中增加JAVA环境变量,如下:

        export JAVA_HOME= /opt/java/jdk1.7.0_17

        export JRE_HOME=$JAVA_HOME/jre

        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/rt.jar

        export PATH=$PATH:$JAVA_HOME/bin

        ² 使每个终端用户登录以后可以直接使用JAVA命令的环境变量配置,需要JAVA环境变量编辑到文件/etc/ profile.d /java.sh中即可。

        #vi /etc/ profile.d /java.sh

        在该文件中增加相应的环境变量:

        export JAVA_HOME= /opt/java/jdk1.7.0_17

        export JRE_HOME=$JAVA_HOME/jre

        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/rt.jar

        export PATH=$PATH:$JAVA_HOME/bin

        编辑完成保存后,改该文件为可执行权限即可:

        #chmod 755 /etc/ profile.d /java.sh

        v. 生效环境变量

        #source /etc/ profile

        这时JDK即可使用。

        如果将环境变量/etc/ profile.d /java.sh文件中,则重新通过终端登录即可。

        b、安装tomcat

        1、 准备

        下载安装包apache-tomcat-7.0.82.tar.gz

        2、 安装

        将apache-tomcat-7.0.82.tar.gz文件解压到安装目录即可

        #tar zxvf apache-tomcat-7.0.82.tar.gz

        3、 配置

        i. 配置Tomcat启动端口

        Tomcat默认的端口是8080,如果需要修改该端口,则通过server.xml中的Connector链接中端口(port)设置即可。

        进入tomcat配置目录

        #cd $HOME/apache-tomcat-7.0.82/conf

        #vi server.xml

        如将端口设置为8080,则配置应该为:

        <Connector port="8080" protocol="HTTP/1.1"

        connectionTimeout="20000"

        redirectPort="8443" />

        需要注意的是,如果要运行端口在1024一下的程序,需要以root账号运行,否则Tomcat启动不了。

        如果需要以非root账号运行,需要以Tomcat启动时端口设置为1024以上的,以root账号登陆系统,将80端口重定向到Tomcat启动的账号即可。

        如将80端口重定向到8080端口:

        #iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

        ii. 配置Tomcat Java内存参数

        该配置是修改catalina.sh启动设置,在catalina.sh文件中加入JAVA_OPTS参数设置,如:

        JAVA_OPTS="$JAVA_OPTS -Xmn256m -XX:PermSize=128M -XX:MaxNewSize=512M -XX:MaxPermSize=512M"

        进入目录$HOME/apache-tomcat-7.0.82/bin

        # cd $HOME/apache-tomcat-7.0.82/bin

        # vi catalina.sh

        在文件的第一行加入配置即可

        设置完后重启Tomcat即可。

        iii. 配置msupport应用文件(mSupport_Data)路径

        进入应用配置路径

        #cd $HOME/webapps/msupport/WEB-INF/config

        # vi config.properties

        nonwin.mSupportData.path=$HOME/apache-tomcat-7.0.82

        设置完后重启Tomcat即可。

        c、部署系统服务

        1、 准备

        mSupport部署应用包msupport.war

        2、 部署

        将msupport.war放置到Tomcat的webapps目录下,然后重新启动Tomcat即可。

        # cd $HOME/apache-tomcat-7.0.82/bin

        # ./startup.sh

        3、 数据库配置文件修改

        # cd $HOME/webapps/msupport/WEB-INF/classes/

        #vi hibernate.cfg.xml

        <property name="hibernate.connection.username">migu</property> --msupport应用数据库名称

        <property name="hibernate.connection.url">jdbc:mysql://100.101.62.227:3306/migu?useUnicode=true&amp;characterEncoding=utf8</property> -- IP为msupport应用数据库IP,端口为mysql数据库服务端口,“migu”为msupport应用数据库名称

        <property name="hibernate.connection.password">5bece17919b33cc17d194368098d2382</property>-

        --“5bece17919b33cc17d194368098d2382”为msupport应用数据库密码加密串

        该密码为加密后的数据库密码。

        重新启动Tomcat即可。

        4、 数据库密码加密工具使用

        将工具AESCodeUtil.jar上传到msupport应用的$HOME目录下,执行命令:

        java -Dparam=123 -jar AESCodeUtil.jar -- “123”为数据库明文密码

        # java -Dparam=123 -jar AESCodeUtil.jar

        a0a34d9fe87b55cb851b47df3b604e6e