需要部署应用到生产环境,因此记录一下部署的过程。
一、MySql数据库安装(数据库服务器)
1.删除原有mysql
- rpm -qa|grep mysql
- rpm -e --nodeps 包名 (上面显示出来的包名。一个个删掉)
- find / -name mysql
- rm –rf 目录名 (上面显示出来的包名。一个个删掉)
- rm –rf /etc/my.cnf (若提示一个目录,则找到相关文件删除)
- find / -name mysql (再次查看是否残留)
2.上传安装包到服务器上并且解压
- mkdir /usr/local/mysql-5.7 (在/usr/local目录下创建mysql文件夹)
- 用上传工具WinSCP等把下载好的mysql5.7上传到/usr/local/mysql-5.7目录下
- tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ (解压)
- cd /usr/local/
- mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql (修改名字)
3.创建用户组
- groupadd mysql
- useradd -g mysql mysql
4.修改mysql目录的权限
- cd /usr/local/mysql
- chown -R mysql . (注意命令后面有一个点.,表示当前目录)
- chgrp -R mysql .
- mkdir data (在mysql目录中创建data文件夹)
5.mysql系统初始化
- /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
- 此时系统会有提示:2018-05-14T01:12:58.377082Z 1 [Note] A temporary password is generated for root@localhost: <NWI%lIhk1(e
- 记住后面的密码值:<NWI%lIhk1(e (是root用户的随机密码,以你生成的为准)
6.第一次启动mysql
- /usr/local/mysql/bin/mysqld_safe --user=mysql &
- ps aux |grep mysqld (查看是否启动成功)
7.修改默认密码
- /usr/local/mysql/bin/mysqladmin -uroot -p password
- 输入密码<NWI%lIhk1(e
- 输入新密码yx123456 (完成)
8.关闭服务
- /usr/local/mysql/bin/ mysqladmin -uroot -p shutdown
- ps aux|grep mysql (查看是否关闭成功)
9.设置开机自启
- cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld 复制.server
- chmod +x /etc/rc.d/init.d/mysqld (增加mysqld脚本的执行权限)
- chkconfig --add mysqld (把mysqld服务加入系统服务)
- chkconfig --list mysqld (检查mysqld服务是否生效)
10.修改配置文件
- Vim /etc/rc.d/init.d/mysqld
- 按 i 插入:找到basedir= 或者datadir=,修改如下
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
- 按Esc ,并且输入 :wq 保存退出
11.启动、并设置可远程登录
- service mysqld start (启动)
- /usr/local/mysql/bin/mysql -u root -p (并且输入密码)
- use mysql; (在mysql>下输入)
- grant all privileges on *.* to ‘root’@’%’ identified by ‘yx123456’ with grant option;
- flush privileges;
- select user,host from user;
- exit;
12.配置my.cnf (此处定要设置,不然大小写等工程会出错)
- vim /etc/my.cnf
- 按 i ,并插入如下:
[mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/tmp/mysql.sock #不区分大小写 lower_case_table_names = 1 log-error=/var/log/mysqld.log pid-file=/usr/local/mysql/data/mysqld.pid |
3.按Esc ,并且输入 :wq 保存退出
13.开放3306端口(或者关闭防火墙)二选一
投入运行的服务器一般都不会关闭防火墙,一般都会选开放某些端口
-
开放3306端口(二选一)
netstat –tlunp (查看已经开放的端口,看是否有3306)
Systemctl status firewalld (查看防火墙状态)
Systemctl start firewalld (非必须,若果是dead则先开启)
firewall-cmd --get-defalut-zones (查看默认zone是否为public)
firewall-cmd --zone=public --add-port=3306/tcp –permanent (给3306端口永久开放)
(不开放的命令为,此处不用执行: firewall-cmd --zone=public --remove-port=3306/tcp
--permanent)
firewall-cmd --reload (重新载入)
firewall-cmd --zone=public --query-port=3306/tcp (查看3306端口是否开放.开了则=yes)
systemctl stop firewalld (关闭防火墙)
-
关闭防火墙(二选一)
Systemctl stop firewalld
Systemctl disable firewalld
14.为mysql创建用户并授权
- 先进入mysq目录,并进入sql命令行
cd /usr/local/mysql/bin
./mysql -uroot -p (输入root密码)
- 查看当前mysql存在的用户
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
- 创建mysql用户
(username、host、password自己设置。Host指定那个ip可以登录)
(如CREATE USER 'dounima'@'%' IDENTIFIED BY '123456'; %表示所有ip都可以登录)
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
- 给用户授权
- 删除mysql用户
drop user 'username'@'host'; (先查看,再删除)
15.远程登录mysql
在另外一台服务器(应用服务器)用命令连接此mysql,看是否可以远程(或navicat连接)
- Mysql –h100.5.6.7 -uroot –p123 (数据库的ip、root、密码123,依照你设的为准)
- telnet 100.5.6.7:3306 测试2个服务器的网络连通性
1.查看并删除原有JDK
- rpm -qa | grep jdk
- rpm -e --nodeps 包名称
- 上传安装包至服务器
- scp 本地文件路径 用户名@ip地址:服务器目标路径
- 或者用sftp等工具连接服务器上传
- 为安装包添加执行权限
- chmod 755 jdk-8u144-linux-x64.rpm
- 执行安装命令(默认安装在/usr/local)
- rpm –ivh jdk-8u144-linux-x64.rpm
- java –version (查看java版本)
2.配置环境变量
- vi /etc/profile
- 添加内容
export JAVA_HOME=/usr/java/jdk1.7.0_71
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar
- source /etc/profile (立即生效)
- echo $PATH (验证是否正确)
三、Tomcat安装配置(应用服务器)
1.上传安装包至服务器并解压
- scp 本地文件路径 用户名@ip地址:服务器目标路径(或者使用WinWCP等sftp工具把.gz的包上传到服务器)
- tar –zxvf apache-tomcat-8.0.46.tar.gz –C /usr/local
2.配置web访问端口
- vi tomcat/conf/server.xml
- 修改
<server port="80" shutdown="SHUTDOWN">
<Connector port="80" protocol="AJP/1.3" redirectPort="8443" />
<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443"/>
- 检查是否安装正确
cd /usr/local/tomcat/bin
./startup.sh
- 浏览器访问 http://ip
四、系统部署
1.数据初始化(数据库服务器)
- 准备好2个文件 表结构.sql 和 最终sql.sql
- 使用navicat新建连接数据库服务器,填写数据库所在的ip、用户名、密码
- 导入表结构
右键该连接-->点击‘运行SQL文件’-->点击’…’按钮à选择 表结构.sql->点击开始-->等待表结构导入完成
- 完成后右键关闭连接-->重新打开,即可看到导入的表结构
- 导入初始数据
右键该连接-->点击‘运行SQL文件’--.>点击’…’按钮-->选择 最终sql.sql-->点击开始-->等待表结构导入完成
- 完成后右键刷新连接,即可完成初始数据的导入
2.应用的打包和上传(应用服务器)
- 修改应用的数据库配置文件dbconfig.properties, 例子如下:
jdbc.url=jdbc:mysql://100.5.6.7:3306/e3mall?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8 jdbc.username=root jdbc.password=123456
|
100.5.6.7为数据库服务器ip。root为数据库用户账号。123456为密码。根据实际情况修改。
- 打包
Eclipse中右键该工程à点击Export-->点击WAR file-->NEXT-->点击Browse选择存放war包的路径为gzg.war-->点击finish-->等待打包完成
- 上传和部署
使用SFTP等工具连接应用服务器
停止tomcat 命令: /usr/local/tomcat/bin/shutdown.sh
进入/usr/local/tomcat/webapps删除原来的war包
把新的war包上传到/usr/local/tomcat/webapps目录下
重启tomcat: /usr/local/tomcat/bin/startup.sh
查看日志: tail –f /usr/local/tomcat/logs/catalina.out
启动成功,在浏览器浏览验证: http://应用服务器ip/应用名