上线经历

作者第一次上线经历。

任务描述:

线上有俩个系统在运行,api(为第三方提供的接口服务),server(大数据平台管理系统)。api目前使用了两个数据库db1,db2,server 使用了db2。现需要对两个系统更新,api和erserv共用一个数据库db3。其中db3包含api之前所使用的的db2中的数据表。

操作步骤:

1、询问同事得知有测试环境,获得测试服务器地址,并在测试环境部署。

2、将电脑中的程序拷贝进光盘,通过ftp服务上传到测试服务器指定目录。

3、ps aux | grep nginx 找到系统中所使用的nginx 服务器配置文件地址。

4、查看配置文件并备份,通过服务器配置文件,找到目前系统中运行的项目的位置,查看系统配置文件相关信息,包括url地址,数据库配置。

5、mysql -uroot 登录mysql, 找到之前数据库、数据表并备份。find / -name mysqldump 找到 mysqldump 目录,cd /var/lib/mysql  mysqldump -u root -p dbname > dbname.sql

mysql -u root -p dbname tablename > tablename.sql  备份完成可在当前目录 ll | grep .sql 查看所生成的.sql 文件。

6、新建数据库 create database db_new, use db_new ,show databases可以看到没有任何表。source db_new.sql 创建新的表结构。

7、select host,user from mysql.user 查看mysql用户,grant all privileges on db_new.* to user@localhost identified by '123456abc' flush privileges 给user 赋予数据库权限。

8、打开系统监控平台地址获得相关url地址,并逐一修改config文件配置,包括数据库配置。

9、cp nginx.conf new.conf  vim new.conf 修改nginx 配置。

10、ps aux | grep nginx   找到当前nginx运行信息,/usr/local/nginx/sbin/nginx -s reload 重新加载配置,不同配置不能指向同一个项目。

11、登录server 测试各项功能。

12、调用写好的接口测试脚本测试Api


### 网站上线流程及相关注意事项 #### 1. 上线前准备工作 在网站正式上线之前,需要完成一系列的前期准备工作。这些工作主要包括但不限于配置项管理、数据库脚本编写以及测试环境验证等内容。为了减少潜在的风险,在部署前应当将所有的前置配置提前至少一个小时进行检查和确认[^2]。 #### 2. 数据库与配置文件管理 对于涉及数据存储的应用程序来说,数据库初始化或者迁移操作是非常重要的一步。建议把所有必要的SQL语句整理成易于复制粘贴的形式存放在运维文档里,并确保它们能够在生产环境中顺利运行而不会破坏现有结构或丢失重要资料。 #### 3. 正式部署过程中的应急措施 当新版本被推送至服务器之后,如果现任何异常状况,则应该立即采取行动来控制局面恶化程度。具体做法可以是对当前状态做一个快照备份以便后续分析原因;另外还要考虑实施回滚策略——即将服务恢复到上一个稳定的状态直到查明根本原因是安全的做法之一。 #### 4. 多个项目并处理机制 如果有多个不同的特性更新计划在同一时间段内被执行的话,《布汇总登记表》可以帮助团队成员清晰地了解到各自负责的部分以及其他关联部分的信息交流渠道畅通无阻。此外还需要指定专门人员作为每一段更改记录的主要联系人及其副手角色以备不时之需。 #### 5. 功能验收标准制定 针对每一次迭代后的成果物都需要有一套完整的检验清单用来指导QA工程师们如何去评估其质量水平是否达到了预期目标。因此事先规划好这一部分内容能够有效防止因疏忽而导致的功能缺失现象生概率增加的情况出现。 #### 6. 后续维护活动安排 一旦完成了初次交付动作并不代表整个项目的结束而是另一个阶段开始即持续改进期。在这个时期内定期回顾总结经验教训就显得尤为重要因为它不仅有助于提高未来类似工作的效率还能促进个人能力的成长与展。 #### 7. 安全性和性能优化考量 (特别适用于区块链领域内的智能合约场景) 除了上述提到的传统Web应用之外, 对于那些基于分布式账本技术构建起来的服务而言还存在着额外的关注焦点比如安全性保障方面就需要经历严格的审查环节才能放心投入使用; 另外考虑到交易成本因素也需要尽可能做到资源利用最大化从而满足用户体验需求的同时也能维持较低的操作费用支出比例[^3]. ```bash #!/bin/bash # Example of a simple deployment script that could be used as part of the process. echo "Starting Deployment..." cp /path/to/configs/* /var/www/html/ mysql -u root -p < /path/to/database.sql service apache2 restart echo "Deployment Completed." ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值