学习篇:TypeCodes的2015年博客升级记
原文: https://typecodes.com/mix/2015updateblog.html
2015年博客升级记
- 作者:vfhky | 时间:2015-05-23 17:25 | 分类:mix
这段时间对博客进行了一次升级,主要是从博客程序所在的系统服务器(CentOS)和WEB环境(LNMP)入手。目前自己的Linux服务器已经升级到CentOS7.1,同时LNMP环境也升级到了最新的版本。下面是整个升级过程的详细整理,记录一下方便以后查看。

1、升级系统服务器(CentOS)
2012年的时候,博客当时使用的域名是huangkeye.com,托管在一朋友@包子的 国外虚拟空间上。后来在2013年的时候,由于新网域名续费太贵,所以弃用并重新申请了huangkeye.cn的域名,并将博客备案托管到了国内的虚拟 主机上。虚拟主机都有两个弊端:首先是一台主机对应一个IP地址,然后两三百个域名都会解析到这台服务器上;其次,虚拟主机的性能、带宽、安全等都会受到 这台主机上其它邻居(即虚拟主机)的影响。于是在2013年7月份,我又重新购买了现在用的这个域名——typecodes.com,并将huangkeye.cn做301跳转到这个域名上来。同时将博客托管在阿里云服务器上。
1.1 升级系统内存
之前买的阿里云主机是单核、512M内存,现在阿里云深圳地域的主机正在做“限时优惠15%”的活动。看了下配置和相应的价格,于是将内存升级到了1G(单核升级到双核的价格太贵了,所以忽略)。
1.2 升级CentOS系统
放弃CentOS6.5系统,并将之前使用的阿里云主机CentOS7.0升级为CentOS7.1。
详细操作见文章:《2015博客升级记(一):安装CentOS7后需要的操作》。
1.3 购买数据盘并划分交换空间
这次升级还买了一块24G大小的数据盘,划分了4G大小作为系统的交换空间,剩余的20G作为备份仓库用于数据库、程序等。
详见文章:《2015博客升级记(二):Linux系统磁盘分区挂载和交换空间》。
2、升级WEB环境(LNMP)
在升级完CentOS7.1系统后,就开始升级LNMP环境了。之前博客采用的是《阿里云CentOS 6.5搭建LNMP环境(非一键脚本)》文中提到的yum方法安装Nginx、Mysql和PHP。鉴于这种方法安装的版本都比较低,不是自己想要的版本,所以这次升级采用了源码编译的方式重新搭建LNMP环境(Nginx1.9.0、MySql5.7.7rc和PHP7)。

2.1 将Nginx1.6升级到最新的Nginx1.9.0版本
采用Nginx1.9.0版本,开启stream module模块用于TCP代理和负载均衡。
详见文章:《2015博客升级记(三):CentOS 7.1编译安装Nginx1.9.0》。
2.2 将MySql5.1升级到最新的MySql5.7.7rc版本
升级到MySQL官方最新的milestone版本,提升数据库性能。
详见文章:《2015博客升级记(四):CentOS 7.1编译安装MySQL5.7.7rc》。
2.3 将PHP5.3升级到最新的PHP7版本
“亚一程”鸟哥@Laruence的作品,值得推荐使用!
详见文章:《2015博客升级记(五):CentOS 7.1编译安装PHP7》。
2.4 配置SSL和SPDY,全站使用https协议访问
博客之前采用http协议访问,中间一段时间换成了https,后来由于博客的图片等资源无法使用https访问,所以又关闭了。这次升级还是决定将全站采用https协议访问,同时将Nginx和PHP的TCP通信改用Google开发的SPDY技术(虽然Google很可能使用新一代的http2技术取代)。
详见文章:《2015博客升级记(六):Nginx配置HTTPS和SPDY实战》。

2.5 MySql的shell定时备份脚本
有了20G的数据盘仓库,就可以将博客的MySql数据库定时备份下来。
详见文章:《2015博客升级记(七):CentOS7定时备份MySql的shell脚本》。
2.6 博客程序的shell定时备份脚本
有了20G的数据盘仓库,就可以将Typecho博客的程序定时备份下来。
详见文章:《2015博客升级记(八):CentOS7定时备份博客程序的shell脚本》。
3、其它
在编译安装MySql5.7.7rc之前,还折腾过MySql其它版本,在这里一并记录分享下。

3.1 CentOS7编译安装MySql5.6.24
作为MySql官方Generally Available (GA) Releases版本——MySql5.6.24在tar包源码编译安装后,只要root用户使用命令mysql -uroot -p登陆,就会出现Segmentation fault的BUG。
具体解决方法,详见文章:《阿里云CentOS 7.1编译安装MySql5.6.24》。
3.2 CentOS7采用yum方法安装MySql5.6.24
到Mysql官方下载社区版Mysql的rpm包,然后使用yum方法安装。
详细操作,见文章:《阿里云CentOS 7.1使用yum安装MySql5.6.24》。
学习篇:TypeCodes的2015年博客升级记的更多相关文章
- 2015博客升级记(五):CentOS 7.1编译安装PHP7
https://typecodes.com/web/centos7compilephp7.html
- ibatis 学习笔记 3 - pfpfpfpfpf的专栏 - 博客频道 - CSDN.NET
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- Asp.Net MVC 进阶篇:路由匹配 实现博客路径 和文章路径
Asp.Net MVC 进阶篇:路由匹配 实现博客路径 和文章路径 我们要实现 通过路由 匹配出 博客地址 和博客文章地址 例如下面的这两个地址 //http://www.cnblogs.com/ma ...
- Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客
==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...
- 为了确认是您本人在申请搬家,请在原博客发表一 篇标题为《将博客搬至CSDN》的文章,并将文章地址填写在上方的"搬家通知地址"中
为了确认是您本人在申请搬家,请在原博客发表一 篇标题为<将博客搬至CSDN>的文章,并将文章地址填写在上方的"搬家通知地址"中
- [windows篇] 使用Hexo建立个人博客,自定义域名https加密,搜索引擎google,baidu,360收录
为了更好的阅读体验,欢迎阅读原文.原文链接在此. [windows篇] 使用Hexo建立个人博客,自定义域名https加密,搜索引擎google,baidu,360收录 Part 2: Using G ...
- 想学习找不到好的博客?看这里>>
想学习找不到好的博客?看这里>> (ps:内容 + 作者) 基础数论知识整理--gyh 进阶数论知识整理--又是gyh 关于SPFA--lyj(终于不是gyh) 证明二次探测定理-Line ...
- OpenGL ES 学习笔记 - Overview - 小旋的博客
移动端图形标准中,目前 OpenGL ES 仍然是比较通用的标准(Vulkan 则是新一代),这里新开一个系列用于记录学习 OpenGL ES 的历程,以便查阅理解. OverView OpenGL ...
- android学习系列:jercy——AI3 的博客
[android学习之十七]——特色功能2:桌面组件(快捷方式,实时文件夹) 二.桌面组件 1.快捷方式 Android手机上得快捷方式的意思可以以我们实际PC机器上程序的快捷方式来理解.而andro ...
随机推荐
- IOS 杂笔-12(类别de巧用 有便于Frame的操作)
在实际开发中很多时候我们都为了控件frame的操作焦头烂额. 例如:我们只想要获取view的width. 我们可以这么操作:view.frame.size.width 有时我们想要改变view的wid ...
- 【转】最流行的编程语言JavaScript能做什么?
本文转自互联网! 首先很遗憾的一点是,“PHP虽然是最好的语言”,但是它不是最流行的语言. 对不起的还有刚刚在4月TIOBE编程语言排行榜上榜的各个语言: 你们都很棒,但是你们都担当不了这个大任. 开 ...
- asp.net mvc 之旅 —— 第六站 ActionFilter的应用及源码分析
这篇文章我们开始看一下ActionFilter,从名字上其实就大概知道ActionFilter就是Action上的Filter,对吧,那么Action上的Filter大概有几个呢??? 这个问题其实还 ...
- mysql 数据库引擎
一.数据库引擎 数据库引擎是用于存储.处理和保护数据的核心服务.利用数据库引擎可控制访问权限并快速处理事务,从而满足企业内大多数需要处理大量数据的应用程序的要求. 使用数据库引擎创建用于联机事务处理或 ...
- 基于IIS构建Pyathon Web服务
本文简单叙述了在Windows下,如何利用IIS构建Python Web服务. 其主要步骤如下: 1.在IIS下构建一个站点,如图: 2.配置Python文件的处理程序,如图: 3.最后,在对应站点根 ...
- python-pickle模块使用实例
以下代码主要实现的是用户登录,注册,密码验证,账户锁定,重置和修改密码等功能 import pickle #第一次运行请去掉下面一段代码的注释 ''' users_db = open("us ...
- java中可定制的序列化过程 writeObject与readObject
来源于:[http://bluepopopo.iteye.com/blog/486548] 什么是writeObject 和readObject?可定制的序列化过程 这篇文章很直接,简单易懂.尝试着翻 ...
- Wiki安装(PHP +Sqlite+Cache)
前期准备 PHP http://windows.php.net/download WinCache Extension for PHP URL:http://sourceforge.net/pro ...
- JSON字符串和JS对象之间的转换
JSON字符串和JS对象之间的转换 1 json字符串转换为js对象 1.1 标准json格式字符串转换为Js对象 JSON字符串 str JSON.parse(str) eval(str) eva ...
- Java程序设计之算出一年第多少天
可以直接拷贝运行. package year; import java.util.Scanner; public class year { public static void main(String ...