注意事项
1.京淘项目部署(没有安装nginx)
2.服务器检索指令
linux杀死进程
防火墙特定端口说明
3.linux项目中添加nginx部署
4.京淘数据库优化
数据库备份
1. 实现京淘项目部署(无nginx)
linux暂时没有安装nginx,只能通过ip+端口号访问。
1.1 修改图片的配置文件上传位置
1).说明:由于windows的路径与Linux的路径不一致,所以必须准备一个Linux的图片上传的根目录来保存图片.
2).准备目录:
3).修改image.properties文件
说明:上面是Windows的配置路径(D:/JT-SOFT/images
),下面是Linux的配置路径(/usr/local/src/images
)。
1.2 上传安装包
说明:
把jt项目打2个包放在一个空目录中,之后在linux的工作目录中准备一个目录,拖动上传。
1.3 项目发布
命令:
java -jar 8081.war
: 这种启动方式会占用当前的终段不能再干其它操作,只能退出去才能进行操作,因为项目发布在linux系统上,所以关闭终端窗口就相当于关闭tomact服务器.
java -jar 8081.war &
: &表示接着还会执行其它操作, 回车
会自动跳出.
执行:java -jar 8081.war &
enter键跳出,执行:java -jar 8082.war &
1.4 访问测试
1.因为linux没有安装nginx,所以这里只能通过ip+端口号
访问。
2.同样因为没有linux,所以图片也不能回显。
访问:8081
同理访问:8082
2 关于服务器检索指令(适用于linux)
2.1 检索java程序
命令:jps
作用:检查所有的java服务. 数字为进程号(pid)
关闭进程:
1.kill PID号 :“卑微的杀死进程” 如果当前的进程项被其它进程使用时 ,则不会关闭.
2.kill -15 PID号: “温柔的杀死” 被杀死之前可以做善后
3.kill -9 PID号: 强制杀死
2.2 检索任意程序
命令: ps -ef | grep xxxx服务名称
说明: ps -ef 表示获取当前Linux系统中的所有的服务信息. “|” 将管道之前的查询的结果当做参数传递给后边的操作.
例子:
1.检索mysql进程号
2.检索所有以java命令开头的进程号。
2.3 关于防火墙的说明
工作中最好不要向上面简单除暴的直接关闭防火墙,可能会被黑客入侵。通常是在防火墙上开启特定的端口号。
1). 检查防火墙开放的端口列表(前提是先开启防火墙)
firewall-cmd --list-ports
2).检查端口是否开放
firewall-cmd --query-port 80/tcp
3). 开启防火墙xxxx
# 新增端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
4).移除端口
firewall-cmd --zone=public --remove-port=9090/tcp --permanent
5).关于防火墙操作的解释
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–remove-port=80/tcp #移除端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
6).重启防火墙
firewall-cmd --reload
3 Linux nginx安装和使用
3.1 Linux项目部署图
现在是把项目部署到linux服务器上,nginx属于服务端代理所以nginx实际上是部署到linux系统上。
3.2 下载linux版的nginx
在官网下载linux版本的nginx,之后上传到工作目录:/usr/local/src/
3.3 解压Nginx服务
1.命令: tar -zxvf xxxxxx
(因为这里下载的是压缩包)
2.把安装包移动到专门放压缩包的目录software,并把解压的nginx改名
3.4 nginx目录结构问题
nginx中有2个目录结构:
1.源文件目录:负责nginx的安装 编译等操作。
安装命令:
依次执行这3个命令。
1. ./configure
2. make
3. make install
1.1执行当前目录下的脚本文件:./ xxx
(绿色文件代表脚本文件)
1.2 编译
1.3 安装
2.工作目录:/usr/local/nginx
(负责nginx的反向代理等配置…)
3.5 启动nginx测试
1).说明:nginx的启动应该在 “/usr/local/nginx”
(nginx的工作目录)
说明:
conf:配置文件目录
html:默认页面目录
logs:日志目录
sbin:nginx启动目录
2).进入sbin目录之后,启动nginx.
linux版本的nginx命令:
./nginx 启动nginx
./nginx -s reload 重启nginx
./nignx -s stop 停止nginx
3).启动效果测试:`http://192.168.126.129:80``
3.6 Linux nginx实现反向代理/负载均衡
3.6.1 实现域名/图片回显代理
需求:要求用户通过http://manage.jt.com的方式访问Linux中的nginx,并实现负载均衡。
1).需要先修改hosts文件。
2).关闭windows中的nginx防止出现干扰的情况。
3).修改.conf文件
#1.配置tomact集群
server {
listen 80;
server_name manage.jt.com;
location / {
proxy_pass http://jt;
}
}
upstream jt {
server 192.168.126.129:8081;
server 192.168.126.129:8082;
}
#2.配置linux图片代理
server {
listen 80;
server_name image.jt.com;
location / {
#配置图片磁盘地址.
root /usr/local/src/images;
}
}
4).ctrl+s保存:
5).启动nginx
6).访问测试
4 京淘数据库优化
4.1 准备第二台虚拟机
改变虚拟机的名字,并重新解压一份linux系统到虚拟机。
4.2 修改虚拟机ip
说明:因为现在解压的是同一份linux系统,所以现在的主机ip相同,需要修改第二台虚拟机的ip.
4.2.1 修改MAC地址
修改MAC地址,之后点击确定,在重新运行虚拟机。
4.2.2 修改ip地址
说明:因为现在主机ip相同,所以现在不能通过远程工具连接,现在只能通过黑窗口的方式进行更改。
1). 检查IP地址
命令: ip addr
如果没有IP展现则执行如下的命令重启网卡.
service NetworkManager stop
chkconfig NetworkManager off 永久关闭 Manager网卡
service network restart 重启network网卡
2).修改IP地址
2.1).找到IP地址的目录
cd /etc/sysconfig/network-scripts/
2.2).编译ifcfg-ens33文件.
vim ifcfg-ens33
点击i—>把129改为130---->Esc—>:wq退出。
3). 重启网卡 检查IP地址是否正确
4).通过远程工具连接
4.3 为什么需要搭建Mysql集群
描述: 如果项目中使用单台数据库,如果由于不可抗因素导致设备损坏,数据丢失,将直接影响用户的使用,需要需要进行优化.
解决:数据库备份。
4.4 数据库数据备份方式
4.4.1 数据库冷备份
说明:定期将数据库中的文件通过sql的方式进行转储.保证数据在一定时间之内得到备份.
缺点:
1.数据库冷备份由人工操作,非常的不方便
2.数据库冷备份由于是定期执行,所以可能会导致数据丢失.
但是公司还是会用到这种方法,因为丢失一部分总比全部丢失好,数据库冷备份是恢复数据的最后的有效手段.
注意:
1.先启动数据库才能连接成功.
2.这里启动的是linux里面的数据库.(启动命令:systemctl start mariadb)
步骤:
1.选择导出的数据库.
2.选择导出的目录
4.4.2 数据库热备份
热备份:把主库的数据源源不断的同步到从库里面。
说明: 由于数据库的同步的操作在工作中特别的频繁,所以作为数据库的开发人员,也设计了数据库如何进行同步.
同步的步骤:
- 数据库主库如果需要启动同步策略,则必须开启二进制日志文件.(默认条件下是关闭的.)
- 当用户"更新"数据库时,主库会将更新信息写入二进制日志文件中. (主库任务结束)
- 从库会利用IO线程读取主库中更新的二进制日志文件.
- IO线程会将读取到的信息采用异步的方式先保存到中继日志中.(中继:临时存储数据的媒介)
- SQL线程会读取中继日志中的信息,之后将sql语句同步到从数据库中.至此实现了主从的同步…
4.5 安装从库mysql
1).测试网络连接
2)略:步骤查看day09–>5.3.
4.6 注意事项
说明:由于要实现数据库的主从的同步,所以配置主从之前必须保证数据库的信息一致.
步骤:
1.将主库的信息使用冷备份的方式导出.
2.在数据库的从库中导入jtdb.sql文件即可.