京淘项目实战开发-10[Linux脚本、安装Nginx、数据库优化]

228 阅读4分钟

1.Linux脚本

1.1 需求

参考京淘项目实战开发-9 导入:8082.war

说明: Linux中的tomcat服务器 需要通过命令 进行启动,如果每次启动,都执行一遍,如果服务器数量较多,则启动繁琐. 命令如下: nohup java -jar 8082.war -> 8082.log & 在这里插入图片描述

优化: 编辑Linux脚本实现批量启动(先关闭服务) 在这里插入图片描述 删除日志命令: rm -f *.logrm -f 808*.log

1.2 编辑shell脚本

命令: vim start.sh 在这里插入图片描述

运行脚本: 在这里插入图片描述

2.Linux安装Nginx

2.1 业务说明

由于 nginx主要的作用 :

  • 1.负载均衡
  • 2.完成反向代理机制

由于图片在Linux的磁盘中,所以必须通过Nginx方式进行反向代理 在这里插入图片描述

2.2 手动安装Nginx

2.2.1 下载Nginx安装包

命令:

wget http://nginx.org/download/nginx-1.19.8.tar.gz 在这里插入图片描述

2.2.2 安装nginx

1). 解压

[root@localhost src]# tar -xvf nginx-1.19.8.tar.gz

2).修改文件名称 在源文件目录中执行下列命令 在这里插入图片描述

3).编译/安装 3.1) ./configure 在这里插入图片描述

3.2) make 编译C语言的程序 在这里插入图片描述

3.3) make install 安装nginx 在这里插入图片描述

3.4) whereis nginx 检查nginx安装位置 在这里插入图片描述

2.2.3 nginx命令

1).路径 在这里插入图片描述 2)

  • ./nginx 启动
  • ./nginx -s reload 重启
  • ./nginx -s stop 停止

3).调试nginx 在这里插入图片描述

2.3 nginx实现反向代理

2.3.1业务需求

1).实现图片代理 域名: image.jt.com 2).实现tomcat服务器负载均 域名: manage.jt.com

2.3.2 编辑配置文件

在这里插入图片描述 在这里插入图片描述

#配置图片代理服务器
	server {
		listen 80;
		server_name image.jt.com;

		location / {
			root /usr/local/src/images;
		}
	}

	#配置后台管理服务器
	server {
		listen 80;
		server_name manage.jt.com;

		location / {
			proxy_pass http://tomcats;
		}
	}

	#配置集群
	upstream tomcats {
		#内网IP
		server 192.168.126.129:8081;
		#本机IP
		server 127.0.0.1:8082;
	}

在这里插入图片描述

重启: 在这里插入图片描述

2.3.3 编辑HOSTS文件

因为我们没有域名,所以需要模拟域名! 在这里插入图片描述

# 京淘配置  

192.168.126.129  image.jt.com

192.168.126.129  manage.jt.com

#IP 域名  映射关系

#127.0.0.1  image.jt.com

#127.0.0.1  manage.jt.com

127.0.0.1  www.jt.com

127.0.0.1  sso.jt.com

127.0.0.1  localhost

#bug 丢最后一个字母问题

测试: 在这里插入图片描述


3. 准备2台Linux系统

3.1 关于京淘项目虚拟机IP修改说明

3.1.1修改虚拟机MAC地址

当新建虚拟机时,修改mac网络地址 在这里插入图片描述

3.1.2 Window 配置IP地址

1).修改IP地址 在这里插入图片描述

2).设定IP租用时间 在这里插入图片描述

3).检查windowsIP地址 cmd中输入ipconfig 在这里插入图片描述

4).检查LinuxIP 启动虚拟机 在这里插入图片描述

5).检查通信是否畅通 cmd 输入 ping 192.168.126.129 在这里插入图片描述

3.1.3 检查IP地址

命令: ip addr

如果没有IP展现则执行如下的命令

service NetworkManager stop 
chkconfig  NetworkManager  off    永久关闭 Manager网卡
service  network restart		  重启network网卡

3.2 修改IP地址

1).找到IP地址的目录

cd /etc/sysconfig/network-scripts/

在这里插入图片描述

2).修改IP地址

 vim ifcfg-ens33

修改完成之后 shift+: wq 保存退出即可 在这里插入图片描述

3). 重启网卡 检查IP地址是否正确 在这里插入图片描述

3.3 通过工具远程链接

在这里插入图片描述

在这里插入图片描述

4. 关于数据库优化

4.1 数据备份

4.1.1 数据库冷备份

定期有人工手动的将数据库的信息进行导出操作. 弊端: 备份不是实时的. 数据可能丢失. 意义: 数据库冷备份 是公司恢复数据最后有效的手段

在这里插入图片描述

在这里插入图片描述

4.1.2 数据库热备份

在这里插入图片描述

数据库热备份的原理:

当数据库新增数据时,首先完成数据库操作,并且将新增的数据写入到二进制日志文件中。

数据库从库,通过HOST/PORT/USER/PASSWORD/文件名称/POS(位置),读取主库二进制文件信息.之后将数据写入到从库的中继日志中保存。

数据库从库,启动Sql线程,将中继日志中的文件实时的写入从库中,至此实现了数据库主从同步。

4.1.3 安装从数据库

参考:京淘项目实战开发-09

在这里插入图片描述

4.2 实现数据库主从挂载

4.2.1 开启二进制日志文件

命令: 在129的主库中编辑文件 vim /etc/my.cnf

1).修改mysql环境配置 在这里插入图片描述 在这里插入图片描述 2).重启数据库 :systemctl restart mariadb

3).检查二进制文件是否有效 在这里插入图片描述 4)删除的方法:rm -f mysql-bin.* 在这里插入图片描述

4.2.2 开启从库二进制日志文件

操作方式与上述相同,唯一变化的就是 server-id=2 命令: vim /etc/my.cnf 在这里插入图片描述

修改之后,重启数据库从库 在这里插入图片描述

4.2.3 实现数据库主从挂载

1).检查主库129的状态信息 在这里插入图片描述

2).从库挂载

/*1.实现主从的挂载 host/port/user/pass/文件名称/位置   */
CHANGE MASTER TO MASTER_HOST="192.168.126.129",
MASTER_PORT=3306,
MASTER_USER="root",
MASTER_PASSWORD="root",
MASTER_LOG_FILE="mysql-bin.000001",
MASTER_LOG_POS=245;

/*2.启动主从服务*/
START SLAVE;	

/*3.检查主从状态*/
SHOW SLAVE STATUS;

/*但凡有报错信息 检查日志 io_error 数据库记得重启*/
STOP SLAVE;
/*重置主从结构*/
RESET SLAVE;

/*重新挂载服务*/

3).检查主从状态 在这里插入图片描述