Linux + jdk1.8 + emqx + mysql + tomcat + web 项目云服务器部署

Linux + jdk1.8 + emqx + mysql + tomcat + web 项目云服务器部署

1. JDK1.8安装部署

这里使用tar.gz包进行部署
JDK地址:https://pan.baidu.com/s/1MZUW7ZLQ6Tu_iHaVP6mlow 提取码:xitf
下载好后,使用Xftp或者其它文件上传工具,上传至Linux ,自己创建的 /opt/Java 目录中

输入Linux 命令:cd /opt 只是我习惯将文件部署在此目录,按个人喜欢。

使用命令:mkdir Java 创建Java文件目录。

[root@localhost opt]# mkdir Java

可使用命令 ls 命令查看opt下的目录

[root@localhost opt]# ls
Java
[root@localhost opt]#

使用命令:cd /opt/Java/ 进入到Java目录。

[root@localhost opt]# cd /opt/Java/
[root@localhost Java]# ls
jdk-8u161-linux-x64.tar.gz
[root@localhost Java]#

可看到之前下载的Jdk1.8包
使用命令:tar -zxvf jdk-8u161-linux-x64.tar.gz 进行解压到当前目录
解压后得到:jdk1.8.0_161文件

[root@localhost Java]# tar -zxvf jdk-8u161-linux-x64.tar.gz
[root@localhost Java]# ls
jdk1.8.0_161  jdk-8u161-linux-x64.tar.gz
[root@localhost Java]#

可使用命令 rm -rf jdk-8u161-linux-x64.tar.gz 将压缩包删除,也可不删。
使用命令:vi /etc/profile 编辑JDK 环境变量

[root@localhost Java]# vi /etc/profile

将以下环境变量编辑入profile文件最后一行中

export JAVA_HOME=/opt/Java/jdk1.8.0_161
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

在这里插入图片描述

编辑好后按 Esc 再按 Shift + : 输入wq 保存退出。
使用 java ,javac 命令看出现以下内容表示配置成功。
在这里插入图片描述
至此JDK环境就安装配置完成了。
在这里插入图片描述

2. emqx 开源版本安装部署

进入MQTT官网https://www.emqx.com/zh/try?product=broker
这里我们选择Linux CentOS7 开源版本即可。
在这里插入图片描述
下载好后,使用Xftp或者其它文件上传工具,上传至Linux ,自己创建的 /opt/目录中
使用命令:unzip emqx-centos7-4.3.10-amd64.zip 命令将其解压
解压后得到 emqx 文件。

[root@localhost opt]# unzip emqx-centos7-4.3.10-amd64.zip
[root@localhost opt]# ls
emqx  emqx-centos7-4.3.10-amd64.zip  Java
[root@localhost opt]#

使用命令: cd /opt/emqx/bin 进入到 bin 目录下

[root@localhost opt]# cd /opt/emqx/bin/
[root@localhost bin]# ls
cuttlefish         emqx-4.3.10  emqx_ctl-4.3.10          install_upgrade.escript-4.3.10  nodetool-4.3.10
cuttlefish-4.3.10  emqx.cmd     emqx_ctl.cmd             node_dump                       no_dot_erlang.boot
emqx               emqx_ctl     install_upgrade.escript  nodetool
[root@localhost bin]#

使用命令: ./emqx start 来启动EMQX 服务
出现 EMQ X Broker 4.3.10 is started successfully! 则表示启动成功了。

[root@localhost bin]# ./emqx start
WARNING: There seem to be missing dynamic libs from the OS. Using libs from /opt/emqx/dynlibs
EMQ X Broker 4.3.10 is started successfully!
[root@localhost bin]#

在浏览器 http://192.168.20.132:18083 进入服务后台。默认账号admin 密码public
注意:要换成你自己Linux 的IP地址
在这里插入图片描述
如果访问不了,可能是你防火墙未关闭!
使用命令 systemctl stop firewalld 命令关闭防火墙
使用命令 systemctl status firewalld 查看防火墙状态显示以下内容表示防火墙已经关闭了。
在这里插入图片描述
至此EMQX 开源版本就安装部署完成了!
在这里插入图片描述

3.MySQL 安装部署

可下载MySQL安装包 https://pan.baidu.com/s/1nhVDIT1POJ0kUGnKyz-y-A 提取码:bllg
也可使用命令wget 在线下载,如果连接失效了,下载的MySQL安装包使用Xftp,或者其它上传工具上传即可。
使用命令:cd /opt 进入opt目录
使用命令:wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

[root@localhost opt]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
[root@localhost opt]# ls
emqx  Java  mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

如果下载的安装包,可跳过上面一步。
使用命令:tar -zvxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
解压后使用命令:mv mysql-5.7.26-linux-glibc2.12-x86_64 /opt/mysql-5.7 重命名成 mysql-5.7

[root@localhost opt]# mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql-5.7
[root@localhost opt]# ls
emqx  Java  mysql-5.7

使用命令:groupadd mysql 创建mysql用户

[root@localhost mysql-5.7]# groupadd mysql

使用命令:useradd -r -g mysql mysql 赋予数据目录权限

[root@localhost mysql-5.7]# useradd -r -g mysql mysql

使用命令:mkdir data 创建数据库目录

[root@localhost mysql-5.7]# mkdir data
[root@localhost mysql-5.7]# ls
bin  COPYING  data  docs  include  lib  man  README  share  support-files
[root@localhost mysql-5.7]#

使用命令: chown mysql:mysql -R /opt/mysql-5.7/data/ 赋予权限

[root@localhost mysql-5.7]# chown mysql:mysql -R /opt/mysql-5.7/data/

现在开始配置my.cnf 文件参数使用命令:vi /etc/my.cnf

[root@localhost mysql-5.7]# vi /etc/my.cnf

将以下参数编入my.cnf文件中

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/opt/mysql-5.7
datadir=/opt/mysql-5.7/data
socket=/tmp/mysql.sock
log-error=/opt/mysql-5.7/data/mysql.err
pid-file=/opt/mysql-5.7/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
lower_case_table_names=1 #忽略MySQL大小写

注意:lower_case_table_names=1 ,这一栏是让MySQL不区分大小写。如果你执行的是Windwos导出来的sql可执行文件,就得加上此行,如果是Linux 里创建则不用。
配置好后,开始初始化MySQL
使用命令:cd /opt/mysql-5.7/bin 进入mysql bin 目录中

[root@localhost /]# cd /opt/mysql-5.7/bin/
[root@localhost bin]# ls
innochecksum       mysqladmin                  mysqld_multi      mysqlpump                  mysqlxtest
lz4_decompress     mysqlbinlog                 mysqld_safe       mysql_secure_installation  perror
myisamchk          mysqlcheck                  mysqldump         mysqlshow                  replace
myisam_ftdump      mysql_client_test_embedded  mysqldumpslow     mysqlslap                  resolveip
myisamlog          mysql_config                mysql_embedded    mysql_ssl_rsa_setup        resolve_stack_dump
myisampack         mysql_config_editor         mysqlimport       mysqltest_embedded         zlib_decompress
my_print_defaults  mysqld                      mysql_install_db  mysql_tzinfo_to_sql
mysql              mysqld-debug                mysql_plugin      mysql_upgrade
[root@localhost bin]#

使用命令:./mysqld --defaults-file=/etc/my.cnf --basedir=/opt/mysql-5.7/ --datadir=/opt/mysql-5.7/data/ --user=mysql --initialize
初始化mysql

[root@localhost bin]# ./mysqld --defaults-file=/etc/my.cnf --basedir=/opt/mysql-5.7/ --datadir=/opt/mysql-5.7/data/ --user=mysql --initialize

使用命令:cat /opt/mysql-5.7/data/mysql.err 查看初始化的mysql密码 下方图片红框就是初始化的密码记得保存噢!

[root@localhost bin]# cat /opt/mysql-5.7/data/mysql.err
2021-12-13T11:29:07.721469Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2021-12-13T11:29:07.971285Z 0 [Warning] InnoDB: New log files created, LSN=45790
2021-12-13T11:29:08.008961Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2021-12-13T11:29:08.068427Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: e2c446b5-5c07-11ec-ba42-000c2928ed06.
2021-12-13T11:29:08.072511Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2021-12-13T11:29:08.075979Z 1 [Note] A temporary password is generated for root@localhost: naoRjOlkj5-e
[root@localhost bin]#

在这里插入图片描述
使用命令:cd /opt/mysql-5.7/support-files/ 进入到support-files 目录下

[root@localhost bin]# cd /opt/mysql-5.7/support-files/
[root@localhost support-files]# ls
magic  mysqld_multi.server  mysql-log-rotate  mysql.server

使用命令:./mysql.server start 启动服务 输出Starting MySQL. SUCCESS! 表示成功了

[root@localhost support-files]# ./mysql.server start
Starting MySQL. SUCCESS!

使用命令:ps -ef|grep mysql 可查看 mysql 进程是否启动,显示下面内容表示启动成功。

[root@localhost support-files]# ps -ef|grep mysql
root       5440      1  0 19:40 pts/0    00:00:00 /bin/sh /opt/mysql-5.7/bin/mysqld_safe --datadir=/opt/mysql-5.7/data --pid-file=/opt/mysql-5.7/data/mysql.pid
mysql      5667   5440  0 19:40 pts/0    00:00:00 /opt/mysql-5.7/bin/mysqld --basedir=/opt/mysql-5.7 --datadir=/opt/mysql-5.7/data --plugin-dir=/opt/mysql-5.7/lib/plugin --user=mysql --log-error=/opt/mysql-5.7/data/mysql.err --pid-file=/opt/mysql-5.7/data/mysql.pid --socket=/tmp/mysql.sock --port=3306
root       5698   5120  0 19:42 pts/0    00:00:00 grep --color=auto mysql

使用命令:cd /opt/mysql-5.7/bin/ 我们回到 bin 目录下。
使用命令:./mysql -uroot -p 登录mysql
在password:输入之前初始化的密码。

[root@localhost bin]# cd /opt/mysql-5.7/bin/
[root@localhost bin]# ./mysql -uroot -p
Enter password:

在这里插入图片描述
登录成功后,我们修改MySQL登录密码
使用命令:set password = password(“123456”) 这里可填写你自己需要的密码。
再执行:alter user “root”@“localhost” password expire never;
再执行:flush privileges; 立即生效
输入:exit 可退出数据库。
修改后的密码,可尝试登录一下。

mysql> set password = password("123456");
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> alter user "root"@"localhost" password expire never;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
[root@localhost bin]#

至此MySQL就安装部署完成了!
在这里插入图片描述在这里插入图片描述在这里插入图片描述棒!

4.Tomcat 8 安装部署

下载Tomcat 8 安装包:https://pan.baidu.com/s/1zEs3h6h6M66Z91dn75gIOg 提取码:7nr8
下载的 Tomcat 安装包使用Xftp,或者其它上传工具上传即可。
使用命令:cd /opt/ 进入opt目录下
使用命令:tar -zvxf apache-tomcat-8.5.73.tar.gz 解压包到当前目录下

[root@localhost /]# cd opt/
[root@localhost opt]# ls
apache-tomcat-8.5.73.tar.gz  emqx  Java  mysql-5.7
[root@localhost opt]# tar -zvxf apache-tomcat-8.5.73.tar.gz

解压后得到:apache-tomcat-8.5.73
在这里插入图片描述
现在我们把项目工程包放入 /opt/apache-tomcat-8.5.73/webapps/ 目录中
使用命令:cd /opt/apache-tomcat-8.5.73/webapps/
再执行:mkdir faceServer 创建一个存放项目的文件夹
然后使用Xftp 或者其它上传文件工具,上传到faceServer目录下
注意:faceServer 里的文件,我是将工程打包成war包,然后在解压在此目录的。

[root@localhost /]# cd /opt/apache-tomcat-8.5.73/webapps
[root@localhost webapps]# mkdir faceServer
[root@localhost faceServer]# ls
META-INF  org  WEB-INF

现在我们开始配置 server.xml 将项目路径配置进去
使用命令:cd /opt/apache-tomcat-8.5.73/conf/ 进入到conf目录下

[root@localhost apache-tomcat-8.5.73]# cd /opt/apache-tomcat-8.5.73/conf/
[root@localhost conf]# ls
catalina.policy      context.xml           jaspic-providers.xsd  server.xml        tomcat-users.xsd
catalina.properties  jaspic-providers.xml  logging.properties    tomcat-users.xml  web.xml
[root@localhost conf]#

使用命令:vi server.xml 编辑文件
找到此处,是访问端口号
在这里插入图片描述
在这里插入图片描述
配置好后,使用Esc 再按Shift+: 输入wq保存退出
然后我们开始启动项目使用命令: cd /opt/apache-tomcat-8.5.73/bin/ 进入到tomcat bin 目录下
使用命令:./startup.sh 开启tomcat 服务,输出一下内容表示启动成功了。

[root@localhost faceServer]# cd /opt/apache-tomcat-8.5.73/bin/
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE:   /opt/apache-tomcat-8.5.73
Using CATALINA_HOME:   /opt/apache-tomcat-8.5.73
Using CATALINA_TMPDIR: /opt/apache-tomcat-8.5.73/temp
Using JRE_HOME:        /opt/Java/jdk1.8.0_161/jre
Using CLASSPATH:       /opt/apache-tomcat-8.5.73/bin/bootstrap.jar:/opt/apache-tomcat-8.5.73/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.

现在我们访问一下服务:浏览器输入:http://192.168.20.132:8080/system/devices 进行访问
在这里插入图片描述
至此我们的项目就部署完成了!
并且MQTT的消息中间件也可以收到消息了
在这里插入图片描述
我们也可以使用MQTT消息中间件自带的消息订阅功能查看
可以看到我们订阅的/_dispatch/command/ 已经接收到了客户端发来的消息。
在这里插入图片描述
在这里插入图片描述

这里我将集成了Spring boot + web + MQTT消息消息中间件Demo示例可下载参考。
Spring boot + web + MQTT消息消息中间件Demo示例 提取码:q4kp
Demo示例里的注释已经简单的介绍了消息订阅,消息发布,MQTT消息中间件的使用。

如自己有新需求:还请参考官方文档进行开发~

至此整个项目搭建就完成了

如果此片文章对你有帮助的话,请送给我一个点赞~ 也是第一次发文章,还请各位多多关照~
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值