共计 3175 个字符,预计需要花费 8 分钟才能阅读完成。
cgb2010- 京淘我的项目 Day10
1. 利用脚本实现我的项目公布
1.1 编辑脚本文件
`vim start.sh`
* 1
1.2 启动脚本
1.3 日志查看命令
cat 输入文件所有的内容 能够检索大量的日志文件
more 输入文档所有的内容,分页输入,空格浏览下一屏,q 退出
less 用法和 more 雷同,只是通过 PgUp、PgOn 键来管制
tail 用于显示文件后几号,应用频繁
tail -10 nginx.conf 查看 nginx.conf 的最初 10 行
tail –f nginx.conf 动静查看日志,不便查看日志新增的信息
ctrl+c 完结查看
1.4 对于 Nginx 作业阐明
`# 配置域名代理
server {
listen 80;
server_name manage.jt.com;
location / {
#代理 服务器拜访地址
#proxy_pass http://localhost:8091;
#proxy_pass http://jtWindows;
proxy_pass http://jtLinux;
}
}
#构建 tomcat 服务器集群
#关键字: upstream 定义集群
#默认规定: 1. 轮询策略 2. 权重 weight= 阿拉伯数字 3.IPhash
# max_fails=1 设定最大的失败次数
# fail_timeout= 失败的超时工夫
# 如果 nginx 申请达到了最大的失败次数, 则在规定的工夫内, 不会再把申请发给 tomcat 服务器. 直到下一个周期.
upstream jtWindows {
#ip_hash;
server localhost:8081 max_fails=1 fail_timeout=60s;
server localhost:8082 max_fails=1 fail_timeout=60s;
server localhost:8083 max_fails=1 fail_timeout=60s;
}
#搭建 Linux 集群
upstream jtLinux {
server 192.168.126.129:8081;
server 192.168.126.129:8082;
}`
1.5 装置 Linux 的 Nginx 服务器
1.5.1 下载 Linux 版本的服务器
1.5.2 上传 Nginx 服务器
1.5.3 对于 nginx 目录阐明
源码目录: /usr/local/src/nginx-source 该目录只是用来编译 nginx. 不负责 nginx 服务器的运行.
工作目录: /usr/local/nginx 该 nginx 负责反向代理的相干配置.
1.5.4 装置 nginx 服务器
门路地位: /usr/local/src/nginx-source
进入 nginx-source 目录中执行下列命令
命令 1: ./configure
命令 2: make 校验服务是否无效
命令 3: make install 装置 nginx 服务项
1.6 Nginx 配置
1.6.1 查看 nginx 目录构造
1.6.2 批改 Linux nginx 配置
`# 配置图片服务器
server {
listen 80;
server_name image.jt.com;
location / {root /usr/local/src/images;}
}
#配置 tomcat 集群
upstream tomcats{
server 192.168.126.129:8081;
server 192.168.126.129:8082;
}
#配置后端服务器
server {
listen 80;
server_name manage.jt.com;
location / {proxy_pass http://tomcats;}
}`
1.6.3 Nginx 我的项目启动
地位:
命令:
- ./nginx 启动 nginx
- ./nginx -s reload 重启 nginx
- ./nginx -s stop 进行 nginx
1.6.4 Linux 我的项目公布
批改 hosts 文件 让所有的申请 发往 Linux 版本的服务器.
`# 配置 Linux 环境下的服务
192.168.126.129 image.jt.com
192.168.126.129 manage.jt.com
# 京淘电商环境
#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
1.6.5 我的项目公布阐明
- 筹备第二台虚拟机
============
2.1 复制课前材料的虚拟机
筹备 2 台 Linux 虚拟机程序.
2.2 IP 地址批改
具体参见: 对于京淘我的项目虚拟机 IP 批改阐明博客
2.3 在 130 零碎中装置 mariadb 数据库
1. 装置数据库
2. 凋谢 mysql 权限
3. 敞开 Linux 的防火墙
具体参数 Linux 装置 mariadb 的博客
2.4 系统还原
2.4.1 业务阐明
因为京淘我的项目在 windows 中开发, 在 Linux 中部署. 整个流程注意事项泛滥, 导致大家实现业务耦合性高.
2.4.2 批改端口
2.4.3 批改图片地址
切换文件存储的地位.
2.4.4 还原 Nginx 配置
批改实现之后, 重启 nginx 服务器
2.4.5 还原 HOSTS 文件
- 数据库高可用实现
============
3.1 数据库优化阐明
3.1.1 冷备份阐明
业务场景: 数据库中的记录应该保障尽可能的平安, 如果数据失落则会造成不可挽回的损失!!!
阐明: 依据用户的需要 定期的将数据库文件进行备份 / 转储 从而保证数据的平安.
毛病:
1. 该操作须要人工手动的操作
2. 冷备份因为不是实时的, 所以可能导致数据失落…
3. 如果备份的数据库的文件较大, 则备份的工夫很久, 容易出错.
阐明: 数据的冷备份是公司复原数据最初无效的伎俩.
3.1.2 数据库热备份
备份步骤:
1. 当用户进行了数据的批改时, 会将批改的数据写入二进制日志文件.
2. 从库通过 IO 线程 读取主库中的记录. 将数据写入到中继日志中.
3.Sql 线程读取数据信息. 通过 sql 语句写入到从库中.
数据库备份的性能, 是数据库原生自带的服务. 所以不须要第三方的干涉…
注意事项: 数据库中的二进制日志文件 默认的条件下是敞开的. 如需备份, 须要手动的开启.
3.2 实现数据库备份操作
3.2.1 开启主库二进制日志
主库: 192.168.126.129
从库: 192.168.126.130
二进制文件地位: vim /etc/my.cnf
3.2.2 重启数据库查看二进制文件信息
命令: systemctl restart mariadb
3.2.3 实现数据备份
阐明: 在数据库的主库中将 jtdb.sql 文件进行转储. 之后利用 sql 工具在从库中进行导入.
1). 主库导出数据
2). 从库导入数据
3.3 开启从库二进制文件
1). 执行命令: vim /etc/my.cnf
2). 批改配置文件:
3). 重启 mysql 数据库 查看是否有二进制文件信息
3.4 实现数据库主从挂载
3.4.1 查看主库状态
1). 主库的状态
2). 如果须要从新生成二进制文件信息, 则手动删除文件即可
3). 查看主库状态
3.4.2 实现数据库主从搭建
`/*130 数据库从库 IP 地址 / 端口号 / 用户名 / 明码 /
二进制文件名称 / 二进制文件的地位 */
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;
/*4. 搭建谬误 1). 敞开主从服务 */
/*4.1 敞开主从服务 */
STOP SLAVE;
/*4.2 查看报错信息 last_sql_error last_io_error 依据日志查问状态 */
/*4.3 从新搭建主从服务 */`
3.4.3 搭建校验