0x00 前沿

此次系统升级大改,从电路板、嵌入式程序、硬件通信协议、硬件与服务器通信协议设计与文档编写、Android程序、Java后台服务程序、数据库结构、PHP后台、前端Web用户操作指令、iOS应用用户操作指令(先审核再适时发布)等进行同步升级,服务器操作系统也由Windows切换成CentOS。为了最大限度地进行无痕升级过度,测试花了不少时间。付出没有白费,新系统在短时间内切换上线,用户近乎无感,没有太大的问题,一些小问题也得到了非常及时的修复,上线运行了一些日子已经算是比较稳定了。

0x01 安装GNOME桌面

虽然生产环境下不开桌面比较好,但桌面也是不时之需

yum groupinstall -y "GNOME Desktop" "Graphical Administration Tools"

启动图形化桌面

startx

0x02 格式化和挂载数据盘

为了方便数据维护,购买了一块数据盘,先挂载数据盘

1)格式化

有图形化磁盘管理工具就不用命令行了。

进去选择未格式化的磁盘,这里可以看到设备路径为/dev/vdb,进行格式化,在这里我命名为www

fdisk -l 命令也可以看到磁盘路径

2)挂载

创建www目录,并挂载

mkdir /www
mount /dev/vdb /www

开机自动挂载

echo '/dev/vdb /www ext4 defaults 0 0' >> /etc/fstab

或者使用磁盘工具挂载


执行df -f命令可以看到已经挂载好了。

0x03 添加用户

用户界面管理工具进不去,可能是只有一个root用户,那么就命令行添加其它用户。
adduser hello 添加用户”hello”
passwd hello 修改”hello”用户的密码

命令行添加后就可以用界面工具了。。。

0x04 安全组规则设置

使用的是阿里云服务器,要公网访问服务器,选择入方向即可
开放单独端口号80/80或范围端口号80/85
所有人都能访问 IP规则 0.0.0.0/0

0x05 设置中文输入法

区域和语言加号->汉语->添加拼音输入法

0x06 IPV6配置

vim /etc/modprobe.d/disable_ipv6.conf
options ipv6 disable=0
vim /etc/sysconfig/network
NETWORKING_IPV6=yes
vim /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0

重启,执行ifconfig命令查看分配了IPV6地址,至于要通过IOS的审核环境,可参考文章最下面的《IPV6配置》

0x07 数据库启动失败问题

使用命令行启动,显示如下:

root@hello ~]# service mysqld start
Starting MySQL.180314 17:50:59 mysqld_safe Logging to '/www/server/data/mariadb.err'.
180314 17:50:59 mysqld_safe Starting mysqld daemon with databases from /www/server/data
/www/server/mysql/bin/mysqld_safe_helper: Can't create/write to file '/www/server/data/mariadb.err' (Errcode: 13 "Permission denied")

应该是目录没有访问权限。那么我们赋予mysql用户权限操作:

chown -R mysql:mysql /www/server/data
chown -R mysql:mysql /www/server/mysql

service mysqld start 成功启动

0x08 FTP上传中途失败

原因是服务器对每个IP创建的客户端连接数进行了限制,FTP客户端采用多线程方式触发了此规则。修改pure-ftpd服务器配置文件:
MaxClientsPerIP 100

0x09 8uftp无法取得目录列表

8uftp客户端高级->选项->防火墙设置->去掉勾选(PASV)被动模式
Hbuilder FTP插件改为主动模式
服务器安全组策略打开21(用户认证)和20(数据传输)端口

0x0A Java服务部署

上传activmq并解压运行

tar -zxvf apache-activemq-5.15.3-bin.tar.gz
./activemq start

查看是否运行:

ps -ef |grep activemq
netstat -noa | grep 8161
netstat -noa | grep 61616

nohup java -jar xxx.jar >xxx.log & 运行jar程序并指定输出日志路径
netstat -nap | grep 8080查看占用进程pid
ps -ef |grep hello.jar
ps pid 查看进程路径
kill -9 pid 强行结束进程

0x0B 数据迁移

1)文件迁移

FTP下载文件,FTP或WinSCP上传

2)数据库迁移

新系统增加了数据库表结构(没改减),所以在本地将新表结构做好,迁移结构到新服务器上。
再备份旧数据库为SQL文件(仅备份insert数据,不导出表结构),在新服务器数据库里执行SQL进行数据迁移。

0x0C 数据库编码异常

新版本在Java中插入了中文到数据库,故而出现乱码问题。Java端用的是hikari数据库连接池
连接时应该指定编码:

jdbc:mysql://127.0.0.1:3306/dbname?useUnicode=true&characterEncoding=UTF-8

0x0D 微信单点登录、支付

新系统切换了子域名,所以微信登录、支付、分享等接口都受影响、需要兼容升级。只需要在授权域名处获取code,把code的返回给子域名就行了,此外使用下面开源组件需要注意用户信息code的授权域&scope=snsapi_userinfo,不然会导致获取用户信息失败,看代码才知道,作者是没有说明的。这里有个很大的坑,即使授权域不是snsapi_userinfo,以前有过授权的微信帐号,即使在数据库中将其删掉重新注册也能获取用户信息,但新用户微信授权注册却无法获取用户信息。
https://github.com/lionskys/codetoany

微信支付签名错误:
公众号支付与APP支付的mch_key不能一样

0x0E 微信分享

  • 添加JS回调安全域名
  • 基本配置->添加新主机IP白名单,多个用换行符隔开(这一点很容易忽略)
  • -

0x10 Memcache与Memcached

Memcached可以看作是Memcache的升级版,Memcached服务器兼容Memcache客户端。PHP客户端要确定好使用memcache还是memcached扩展。

0x11 参考文章

磁盘挂载
https://www.cnblogs.com/nsw2018/p/6441542.html
IPV6配置
http://coolnull.com/4474.html
http://coolnull.com/4476.html

【转载请注明出处: http://blog.csdn.net/leytton/article/details/79551974】
PS:如果本文对您有帮助,请点个赞让我知道哦~微笑

CentOS生产环境设置及产品系统升级策略相关推荐

  1. Galaxy 生信平台(二):生产环境部署

    在 上一篇文章中,我们介绍了适合单个用户进行使用和开发的 Galaxy 在线平台,今天我们来聊一下在为多用户生产环境设置 Galaxy 时,我们应采取的一些可以让 Galaxy 获得最佳性能的额外步骤 ...

  2. 多线程之线程池的拒绝策略,以及生产环境如何合理设置参数(十二)

    上篇博文,我们详细的介绍了线程池的原理,这篇我们重点介绍线程池的拒绝策略,以及生产环境如何合理设置参数.为什么我们要单独拿出一篇博文来写拒绝策略以及配置参数呢?因为自定义线程池配置的重点就两项:一.选 ...

  3. .net core 2.0 部署到centos 7生产环境

    .netcore的跨平台如此之火,忍不住想试试 在linux下部署 .net 程序. 借鉴此篇博文:将ASP.NET Core应用程序部署至生产环境中(CentOS7) 虽然是借鉴,但过程坎坷.对从未 ...

  4. 在Ubuntu 14.04上设置生产环境可用的Node.js

    在Ubuntu 14.04上设置生产环境可用的Node.js 提供:ZStack社区 前言 Node.js是一个开源的JavaScript运行时环境,开发者可以用它方便的构建服务器端应用和网络应用.N ...

  5. asp.net生产环境和开发环境的错误日志包装策略

    对于错误日志的输出,我们借助web.config的两个标志位: <!--全局包装异常处理页面,只有在PageError和Application_Error做清除错误操作才可不跳转--> & ...

  6. 阿里云centos环境之被dos,syn攻击策略和排查方法,持续更新九

    阿里云centos环境之被dos,syn攻击策略和排查方法,持续更新<九> 阿里云centos环境之被dossyn攻击策略和排查方法持续更新九 查看cpu使用情况 查看网络连接情况 检查端 ...

  7. .NET持续集成与自动化部署之路第三篇——测试环境到生产环境的一键部署策略(Windows)...

    Jenkins测试环境到生产环境的一键部署策略(Windows) 一.前言 前面我们已经初步实现了开发集成环境.测试环境的持续集成(自动化构建.自动化测试.自动化部署).但生产环境自动化部署迟迟没有推 ...

  8. CentOS(5.8/6.4)linux生产环境若干优化实战

    CentOS系统安装之后并不能立即投入生产环境使用,往往需要先经过我们运维人员的优化才行.在此讲解几点关于Linux系统安装后的基础优化操作.注意:本次优化都是基于CentOS(5.8/6.4). 下 ...

  9. CentOS(5.8/6.4)linux生产环境若干优化实战------就爱运维

    特别说明:本文来自就爱运维.特和所有博友分享.更多优化,请关注www.92yunwei.com后续内容以及分享. CentOS系统安装之后并不能立即投入生产环境使用,往往需要先经过我们运维人员的优化才 ...

最新文章

  1. 如何用 React Native 创建一个iOS APP?(二)
  2. oracle / parallle /,Oracle海量数据迁移之使用shell启用多个动态并行
  3. C++实现两个矩阵相乘
  4. Xenix — 微软与UNIX的短暂爱恋
  5. dbms_DBMS | 并发控制
  6. 作者:佟继周(1976-),女,中国科学院国家空间科学中心研究室副研究员、副主任...
  7. Router_Cloud
  8. Launcher3无图标问题
  9. Q109:用PBRT渲染Blender导出的模型 (2)
  10. MySQL大表优化方案,单表优化、读写分离、缓存、分区表……都在这里了
  11. Unity写的3D人工智能棋类博弈小游戏-四子棋
  12. LwIP+ STM32+HTTP例程参考
  13. TrackFormer: Multi-Object Tracking with Transformers
  14. Libra最后的命运
  15. No connected devices found; please connect a device, or see flutter.dev/setup for getting started in
  16. 电子器件系列二:IGBT
  17. linux pam 使用例子,PAM认证模块使用实例
  18. windows下装苹果系统---详解
  19. 许愿墙 – javaee 项目实战(一)
  20. 手牵手教你写 Vue 插件

热门文章

  1. 电脑客户端如何同时登陆多个微信账号
  2. 恐怖,差4000万,印度人口超中国!!
  3. unity3d 场景设置注意事项
  4. MySQL建库建表(初识MySQL)
  5. VS2010不能正确加载 'VSTS for Database Professionals Sql Server Data-tier Application'
  6. 初识C#开源商城BrnShop及BrnMall
  7. GPS经纬度数值格式化
  8. 新支点ICG-S2600场馆临时wifi租用,展会无线网络覆盖解决方案
  9. 电路板常用连接器(接插件)介绍与选型建议(一文搞懂如何使用FFC/FPC连接器)
  10. makefile 语法 /usr/bin/ld: cannot find -lxxxx