TypeCodes

Linux下Nginx、MySQL和PHP等应用的日志切割脚本

在Linux中如果应用程序会产生日志,那么就需要考虑日志切割,例如按照固定的大小切割、按照日期进行切割等等。同样,在编译Nginx1.9.0MySQL5.7.7rcPHP7后,这三个应用服务都会产生日志,尤其是Nginx进程根据配置文件ngnix.conf记录每条访问记录到access.log中。如果所有的日志都打印到同一个文件中的话 …

- 阅读剩余部分 -

Linux TCP连接Connection Refused和Connection timed out的问题

前段时间和其它系统做联调测试,对方系统采用的是负载均衡模式。调试时采用的是多台手机作为客户端发送到对方负载均衡服务器,然后再把报文转发送到我这边的服务端。在测试的时候,对方测试人员说有的手机客户端会偶尔出现报文发不过来的情况。

故事有点长,先发一张tcp三次握手的过程图镇楼~

Linux tcp三次握手

1 自己服务端的socket监听出现问题

一开始认为可能是自己作为服务端的监听有问题,因为后面排查监听端口的时候发现了close_wait的情况。当时没多想,认为对方负载均衡不会出错(先前跟其它系统联调过了),就急着解决close_wait的问题去了。

可是后面测试的时候,尽管服务端监听没有任何异常 …

- 阅读剩余部分 -

博客MySQL服务惊魂记:Linux磁盘空间不足(Core Dump文件引爆)

昨天在更新完文章《升级博客文章同步微博的插件:PHP正则提取Markdown的图片地址》后,博客突然无法访问了。

MySQL的错误日志

1 查看Nginx的错误日志error.log

惊愕之余,换了多个浏览器打开博客首页无果(一直显示加载状态),最终报内部服务器500的错误。立即查看Nginx服务的错误日志:

[root@typecodes nginx]# vim error.log 
........
[error …

- 阅读剩余部分 -

CentOS中将备份文件同步到BitBucket、GitHub和Coding的shell脚本

上一篇文章讲述了如何在Linux系统中配置BitBucket、GitHub和Coding这三个平台的git账户,这篇文章就分享如何通过shell脚本定时获取自己的CentOS7.1服务器上的备份文件,然后使用git命令同步到这三个平台仓库上。

CentOS中git同步的shell脚本

1 功能需求描述

我自己为这个shell同步脚本设定了以下三个需求功能点:

1、自动获取数据库备份目和程序备份目录下自动生成的最新的备份文件;
2、将获取到的最新的备份数据库和程序文件自动同步到BitBucketGitHubCoding这三个Git …

- 阅读剩余部分 -

CentOS系统BitBucket、GitHub和Coding等多git账户的配置

目前自己主要在BitBucket、GitHub和Coding这三个Git平台创建了一些项目,所以这篇文章以自己的CentOS7.1服务器作为示例,说说如何在Linux系统中配置不同平台的Git仓库,也即多git账户的配置。

类似于Windows机器上的git配置方法,在CentOS上也是一样的。通过设置Git全部变量的配置文件~/.ssh/config和当前工作仓库的配置文件your_git_project_root/.git/config即可。

当前git工作仓库的.git目录

1 Git全部变量的配置文件:~/.ssh/config …

- 阅读剩余部分 -

2015博客升级记(八):CentOS7定时备份博客程序的shell脚本

这是《2015年博客升级记》系列文章的第八篇,同时也是这一系列文章的最后一篇,内容主要记录在Linux系统中如何使用shell脚本备份服务器上的博客程序(当然也可以是主机上的任何目录或者文件)。

CentOS7定时备份博客程序的shell脚本

1 使用说明

下面是Linux系统文件的shell备份脚本,其中参数BACKUPDIR表示备份文件的存储路径、ORGDIR是待备份的Linux文件路径、NUMDAYS表示保留多少天以内的备份文件。最终,每次执行这个脚本生成的备份文件名类似于系统日期时间+.tar …

- 阅读剩余部分 -

2015博客升级记(七):CentOS7定时备份MySql的shell脚本

这是《2015年博客升级记》系列文章的第七篇,主要记录在Linux系统中如何使用shell脚本备份服务器上的mysql数据库。

CentOS7定时备份MySql的shell脚本

1 使用说明

下面是MySql数据库的shell备份脚本,其中参数DBLIST表示要备份的mysql数据库名称、NUMDAYS表示保留多少天以内的备份文件、MyUSERMyPASS表示mysql数据库的用户名和密码。最终,每次执行这个脚本生成的备份文件名类似于系统日期时间+.sql …

- 阅读剩余部分 -

CentOS开启coredump转储并生成core文件的配置

在CentOS或者suse等Linux系统中默认是关闭coredump核心转储的,也就不会产生core文件。由于在C/C++开发中会用到gdb调试,所以需要开启coredump功能。下面是具体的配置命令,可以保存为一个简单的shell脚本执行。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12 …

- 阅读剩余部分 -