从Windows2008R2迁移Mysql、Tomcat到OracleLinux7.4环境

从系统安全性与维护工作量方面考虑,将Windows2008R2环境下的系统迁移到Linux环境。

迁移前:
OS :Windows2008R2
JAVA: jdk1.6.0_31
Tomcat:7.0.34
Mysql:5.5

迁移后:
OS : OracleLinux7.4 x64
JAVA: jdk1.6.0_31
Tomcat:7.0.82
Mysql:5.7

1、安装操作系统OracleLinux7.4
服务器VMware虚拟服务器,安装选择增加了IDE。

2、MYSQL安装(5.7.20 x64)
2.1在mysql官方网站下载5.7版本rpm安装包,包括
mysql-community-client-5.7.20-1.el7.x86_64.rpm  mysql-community-server-5.7.20-1.el7.x86_64.rpm

通过ftp上传到服务器,开始安装。


#rpm –ivh  mysql-community-client-5.7.20-1.el7.x86_64.rpm

#rpm –ivh  mysql-community-server-5.7.20-1.el7.x86_64.rpm

启动数据库

# systemctl start mysqld.service

查看mysql初始化密码

#cat /var/log/mysqld.log |grep root@localhost


2017-12-18T08:58:39.243084Z 1 [Note] A temporary password is generated for root@localhost: asW&IypCD4vf
默认密码:asW&IypCD4vf
用默认密码登录
mysql>mysql –u root –p
mysql>update mysql.user set authentication_string=PASSWORD('*******') where user='root';
mysql>flush privileges;

上述方法不能修改密码,也可以用以下方法修改
#mysqladmin  -u root –p password 
 (此处是password单词,不是密码),然后根据提示先输入旧密码,在输入新密码,确认即可。
Enter password:******
New password:******
Confirm new password:******
这样就可以用新密码登录了。

2.2远程访问授权
mysql>update user set host = '%' where user = 'root';
mysql>flush privileges;
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'  WITH GRANT OPTION;
 由于项目迁移,需要在mysql中修改如下功能
修改/etc/my.cnf
在[mysqld]下增加如下内容
lower_case_table_names=1    #//表名不分大小写
character-set-server=utf8   #//字符集支持中文
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #//修改数据库模式
2.3配置防火墙
1):查看服务状态
[root@localhost ~]# systemctl list-unit-files|grep enabled
2):防火墙添加1521端口
firewall-cmd --zone=public --add-port=3306/tcp –permanent
3)、重启防火墙
[root@localhost ~]# systemctl restart firewalld.service

3、安装Tomcat
3.1安装JAVA
官方下载jdk-6u45-linux-x64-rpm.bin,上传服务器,并安装。
安装
#chmod 755 jdk-6u45-linux-x64-rpm.bin
#./jdk-6u45-linux-x64-rpm.bin
配置环境变量,在/etc/profile文件后增加如下内容
export JAVA_HOME=/usr/java/jdk1.6.0_45
export JAVA_BIN=/usr/java/jdk1.6.0_45/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
3.2安装Tomcat
3.2.1官方下载Tomcat,并上传服务器,
apache-tomcat-7.0.82.tar.gz
建立tomcat运行目录
#mkdir /opt/tomcat  
赋予tomcat用户权限,tomcat用户操作系统安装的时候已经建立。
#chown tomcat:tomcat /opt/tomcat 
#mv apache-tomcat-7.0.82.tar.gz /opt/tomcat
#tar –zxvf apache-tomcat-7.0.82.tar.gz
运行tomcat, 
# /opt/tomcat/apache-tomcat-7.0.82/bin/startup.sh
3.2.2防火墙添加808080端口
#firewall-cmd --zone=public --add-port=80/tcp --permanent
#firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙
# systemctl restart firewalld.service  
配置防火墙后,浏览器就能访问tomcat默认页面了。
迁移应用,默认在80端口提供服务,输入ip地址可以直接访问应用页面。
linux对于非root权限用户不能使用1024以下的端口,首先程序绑定1024以上的端口,然后root权限下做转发注意有些系统需要手动开启IP FORWARD功能
#firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 --permanent

3.2.3修改tomcat配置文件 conf/ server.xml
修改<Host>配置下的
<Context path="" docBase="/opt/wwwroot/psaood" debug="0" reloadable="true"/>
说明:docBase  项目部署的物理路径,path=""访问路径,直接ip地址访问。
3.2.4增加开机启动
在/etc/rc.d/rc.local文件中增加内容
#/usr/local/tomcat/server/bin/startup.sh start
#chmod +x rc.local
4、应用迁移问题
应用中采用了Jfreechart控件,迁移后导致汉字显示乱码。发现是linux没有对应的字体库导致的
解决方法如下:
从代码中查看Jfreechart中应用的字体
 standardChartTheme.setExtraLargeFont(new Font("隶书",Font.BOLD,20));    //设置标题字体          
 standardChartTheme.setRegularFont(new Font("SimSun",Font.BOLD,16));     //设置图例的字体       
本项目用了2中字体,分别是"隶书""SimSun",将winodws系统对应字体文件simsun.ttc,SIMLI.TTF拷贝到/usr/share/fonts/zh_CN/TrueType。如果没有zh_CN文件夹,就建立对应的文件夹,其实拷贝到fonts下也可以。
将simsun.ttc重命名为simsun.ttf
#mv simsun.ttc simsun.ttf
安装字体
#fc-cache /usr/share/fonts/zh_CN/TrueType/
重启tomcat,图片上的汉字显示正常。

猜你喜欢

转载自blog.csdn.net/upcorange/article/details/78869070