离线部署相关
准备文件有jdk-17,mysql-8.0.39,nginx-1.20.2,tar.gz的压缩包,还有zlib-1.2.11.tar.gz
pcre-8.35.tar.gz压缩包。
1.mysql数据库安装与配置
Linux安装Mysql详细教程(两种安装方法)_linux 安装mysql-CSDN博客
参考这篇博客即可,博主写得超级好。
但是应该是我环境变量没配,在linux下的情况和win不同,不是直接安装好就可以使用mysql命令了,我当时懒得配置环境变量了,因为我systemctl status mysql已经成功运行了,如下图,这就意味着可以用了。
那不配置怎么登入mysql呢,在mysql的安装目录下的bin文件夹内,./mysql -u root -p 后输入密码即可,然后修改密码,导入部署所需的数据库即可。
Create database healthsys;
Use dbname;
source /home/abc/abc.sql;
2.nginx安装
第一步:
直接tar解压
解压nginx包,安装nginx
tar -zxvf nginx版本.tar.gz
第二步:
解压依赖包pcre和zlib即可,放到/usr/local/下,也可以其它路径,看自己,这两直接解压就行。
第三步:
进入到nginx的解压目录下
./configure --without-http_gzip_module 这种是表示禁用模块,还没试过
./configure --with-zlib=/usr/local/zlib --with-pcre=/usr/local/pcre ,--with-xxx=路径,表示指定编译的包所在的路径。
之后ls一下,查看是否存在makefile,有的话说明可以了。
configure之后的结果是这样的,nginx path prefix说明了一会你make, make install 之后安装的地方,你也可以在./configure的时候指定安装路径,--prefix=安装路径
第四步:
Sudo make
Sudo make install
Make的过程中会缺包,但可能系统里有的,自己加上变量,
Make ACLOCAL=xxx/xxx/ AUTOMAKE=xxx/xxx AUTOCONF=xxx/xxx
这个包的路径通过sudo find / -name “包的名字” 2>/dev/null去找,2前面有一个小空格,
然后就会输出包所在的路径。
找到之后要给这个包赋权,chmod +x xxx/xxx/xxx-1.14,不然一会make的时候还是说权限不够。
目前来看缺三个我的系统都有,aclocal,automake,autoconf
make完之后直接make install之后就没问题了。
第五步:
查看/usr/local/里有没有nginx这个文件,有的话就ok了,放静态资源配置nginx.conf即可。
3.jdk的安装
①解压
tar -zxvf jdk.tar.gz
②在/usr/local下创建一个文件夹,一遍移动过去
Mkdir /usr/local/jdk
③移动
Sudo mv jdk解压文件 /usr/local/jdk
④配置环境变量
Cd /etc里面有一个profile文件
注意:误删profile的补救方法
sudo cp /usr/share/base-files/profile /etc/profile
系统有备份到最原始的环境变量文件
在文件最后补上这几个java的配置
export JAVA_HOME=/app/toolFile/java/jdk1.8.0_401 ##记得改成自己的jdk安装路径
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
然后退出
Source ~/.bashrc
Source /etc/profile
Java -version,查看有版本信息表名安装成功,但这个时候你重新开一个终端发现找不到java命令,重启一下就好了,不用慌。
开机自启动
nginx的开机自启动
我是用systemctl设置的开机自启动,因为我找不到rc.local在这个文件就放弃那种方法了。
文件里写以下内容保存即可。
设置文件权限:
sudo chmod 644 /etc/systemd/system/nginx.service
重载
sudo systemctl daemon-reload
启用启动
sudo systemctl enable nginx
sudo systemctl start nginx
查看运行状态
systemctl status nginx
查看运行日志
sudo journalctl -u nginx (-f)加个-f日志会实时变化
查看报错
Cat 到nginx安装目录的error.log
jar程序的开机自启动
和nginx一样的逻辑,下面给出配置的内容
springapp.service的配置如下:
也可以不用root用户,因为权限太大了不安全,那个environment是数据库相关的配置,配置连接数据库的环境,因为systemctl和shell的环境是不一样的,前者不会使用后者的环境。弄好之后还有chmod一下jar程序包
重启之后,可以通过 ps aux | grep “[j]ar”查看是否在运行
因为自启动了,你可以通过sudo journalctl -u nginx (-f)加个-f日志会实时变化,查看运行的状态,进行调整配置。