持续学习&持续更新中…
守破离
【Java从零到架构师第③季】【Linux】【03】Linux应用
- Linux下软件安装
- rpm常用命令
- yum常用命令
- JDK的安装
- MySQL的安装
- Tomcat的安装
- 部署WEB项目
- 注意
- 参考
-
Linux系统是使用软件包管理器来进行软件的安装、卸载和查询等操作的。
-
软件包管理器又分为后端工具和前端工具。
-
CentOS下:后端工具有rpm 前端工具有yum
-
后端工具存在的问题:(X、Y、Z都代表一个软件程序)
X —> Y
X —> Y —> Z
X —> Y —> X -
所以前端工具yum的出现是为了解决后端工具rpm的软件依赖关系的问题(有点类似于Maven至于jar)
-
具体的解决方案就是yum工具会根据你要安装的软件解析该软件的依赖树,然后把整个依赖树的软件从网上(yum库)下载下来,再进行安装。
-
yum工具本质上是基于后端软件包管理工具rpm的,因此通过yum安装的软件,仍然可以使用rpm命令。
安装一个包 # rpm -ivh <包名> --nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 --force 即使覆盖属于其它包的文件也强迫安装 、强迫卸载 查询一个包是否被安装 # rpm -q <软件名> 得到被安装的包的信息 # rpm -qi < 软件名> 列出该包中有哪些文件 # rpm -ql < 软件名> 查询该软件有哪些配置文件 # rpm -qc < 软件名> 列出服务器上的一个文件或目录属于哪一个RPM包 #rpm -qf <文件或目录名> 列出所有被安装的rpm package # rpm -qa 卸载一个包 # rpm -e <软件名> --force 即使覆盖属于其它包的文件也强迫安装 、强迫卸载yum常用命令
查看yum库中的所有包 # yum list 安装命令 # yum install <软件名> # yum install -y <软件名> 查看已经安装的软件包 # yum list installed 卸载软件包 # yum remove <软件名> 搜索软件 # yum search 软件名称
【可选】yum 远程仓库配置(任选其一):
- 配置阿里云的仓库:https://developer.aliyun.com/mirror/centos
- 配置163的镜像仓库:http://mirrors.163.com/.help/centos.html
- 从官网下载需要的jdk,例如:jdk-8u161-linux-x64.tar.gz
- 把文件上传到/usr/local/soft目录(没有soft目录可以先新建该目录)
- 进行解压缩 tar -zxvf /usr/local/soft/jdk-8u161-linux-x64.tar.gz -C /usr/local
- 配置环境变量:vi /etc/profile.d/jdk.sh
export JAVA_HOME=/usr/local/jdk1.8.0_161 export PATH=$JAVA_HOME/bin:$PATH
- 重新加载配置文件或者重启Linux系统source /etc/profile
- 验证配置是否正确:java -version
-
把postfix和mariadb-libs卸载掉,不然的会有依赖包冲突:rpm -e postfix mariadb-libs
-
安装mysql的依赖net-tools和 perl:yum -y install net-tools perl
-
安装Mysql的包
1、将下载好的mysql-community-client-5.7.22-1.el7.x86_64.rpm、mysql-community-common-5.7.22-1.el7.x86_64.rpm、mysql-community-libs-5.7.22-1.el7.x86_64.rpm、mysql-community-server-5.7.22-1.el7.x86_64.rpm这几个包上传到/usr/local/soft/mysql5.7目录 2、cd /usr/local/soft/mysql5.7/ 3、yum install -y *.rpm
-
设置数据库开机启动:systemctl enable mysqld
-
启动MySQL服务:systemctl start mysqld
-
查看临时密码:grep 'temporary password' /var/log/mysqld.log
-
登录账户修改密码:mysql -uroot -p'M#DrvWqhA70q'、ALTER USER 'root'@'localhost' IDENTIFIED BY 'LpRuoyu_2022';
PS:mysql5.7增加了安全级别,密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。 -
输入quit或者exit退出,重新登录:mysql -u root -p'LpRuoyu_2022'
PS:如果登录不上去,重新启动MySQL服务:systemctl restart mysqld -
开放远程登录权限:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'LpRuoyu_2022' WITH GRANT OPTION;FLUSH PRIVILEGES;,输入quit或者exit退出MySQL
-
开放3306端口:firewall-cmd --zone=public --add-port=3306/tcp --permanent 、firewall-cmd --reload
-
mysql的安装配置文件:/etc/my.cnf,设置字符集:vi /etc/my.cnf,在[mysqld]下面添加:character_set_server=utf8或者character_set_server=utf8mb4
- 从官网下载apache-tomcat-8.5.53.tar.gz,把文件上传到/usr/local/soft目录
- 解压二进制文件apache-tomcat-8.5.53.tar.gz到指定目录:tar -zxvf /usr/local/soft/apache-tomcat-8.5.53.tar.gz -C /usr/local
- 配置防火墙开放8080端口:firewall-cmd --zone=public --add-port=8080/tcp --permanent、firewall-cmd --reload
- 启动tomcat:/usr/local/apache-tomcat-8.5.53/bin/startup.sh
- 查看启动日志:tail -100f /usr/local/apache-tomcat-8.5.53/logs/catalina.out
- 查看端口启动信息:
- netstat -ntpl
- ps -ef |grep tomcat
- ps -ef |grep tomcat |grep -v grep
- 停止tomcat服务:kill -9 进程ID 或者 /usr/local/apache-tomcat-8.5.53/bin/shutdown.sh
Tomcat部署项目的方式参考:https://blog.csdn.net/weixin_44018671/article/details/120877249
- 将项目所用的数据库信息,例如数据库用户名、密码、使用哪个数据库等,更改为Linux服务器上的信息(上线版本信息)后,打包项目为lp_resume.war
- 将项目所需的数据库文件lp_resume.sql和打好的war包lp_resume.war,上传至/usr/local/soft/webapp_deployed目录
- 登录MySQL,导入数据库信息:source /usr/local/soft/webapp_deployed/lp_resume.sql,然后退出MySQL命令行界面。
- 将打好的项目war包lp_resume.war拷贝到/usr/local/apache-tomcat-8.5.53/webapps目录:cp /usr/local/soft/webapp_deployed/lp_resume.war /usr/local/apache-tomcat-8.5.53/webapps
PS:其实也可以直接将打好的war包上传至/usr/local/apache-tomcat-8.5.53/webapps目录的 - 启动Tomcat服务器:/usr/local/apache-tomcat-8.5.53/bin/startup.sh
- 在浏览器下输入URL:http://192.168.152.129:8080/lp_resume即可成功访问已经部署好的项目。
- 部署SpringBoot项目,只需要将项目打为jar包,然后上传至Linux服务器,然后使用java -jar jar包路径即可成功部署。
-
使用tail命令查看实时刷新的日志信息:例如,查看Tomcat的日志:tail -100f /usr/local/apache-tomcat-8.5.53/logs/catalina.out
-
启动好MySQL后,可以使用如下命令查看是否启动成功:
-
如果安装MySQL失败,可以:
- less /var/log/messages
- less /var/log/mysqld.log
- 或者
- more /var/log/messages
- more /var/log/mysqld.log
小码哥-李明杰: Java从0到架构师③进阶互联网架构师.
本文完,感谢您的关注支持!



