linux下动态网站维护基本命令小结

1.概述
状态查看及监控、故障处理、系统容量扩展、数据备份/恢复/站点迁移

2.状态查看与监控

(1).系统资源耗用


系统负载和磁盘I/O

进程的总数,其中httpd进程数统计

TCP连接数,TIME_WAIT 等

(2).服务运行情况
用户能否访问


tail -f 查看apache访问日志与错误日志


查看系统日志/var/log/messages
查看服务器与Mysql数据库的连接情况

3.故障处理

(1).PHP类动态网站

服务不能启动、运行中不响应用户请求……
a.apache 配置文件错误
b.动态模块lib PHP5_mod 未能正确编辑
c.网站根目录设置不正确
d.端口冲突
e.系统负载过高,资源耗尽
f.Apache 配置参数不合理
g.防火墙配置不正确
h.数据库故障
i.系统崩溃
j.文件系统损坏
k.磁盘分区耗尽 / /usr /var
l.NFS失效
m.负载均衡下,Apache监听地址不是127.0.0.1

(2).JSP 类型网站

a.系统环境变量设置错误或没设置
b.Apache与Tomcat的网站根目录设置不一致
c.JSP 运行中一直不能释放内存

4.问题处理 (案例1)
Apache 虚拟主机不能访问解决
方法:设置目录权限

5.故障处理过程 (打开论坛速度慢)(案例2)
(1).uptime --> top --> 系统负载
(2).vim /etc/passwd -->查看系统账户
(3).iptables -L -n -->查看防火墙
(4).mysql 客户端连接数据库


mysql> show processlist;


(5).查看Apache的连接数

ps aux | grep httpd | grep -v grep | wc -l


(6).查看TCP的连接数并汇总

netstat -an | awk '/^tcp/ {++ S[$NF]} END {for (a in S) print a,S[a]}'

(7).查看端口请求80


netstat -anp | grep -v unix

(8).重启Apache


/usr/local/apache/bin/apachectl restart


(9).再查看进程数

ps aux | grep httpd | grep -v grep | wc -l


(10).修改Apache最大连接数


<IfModule prefork.c>

StartServers 10

MinSpareServers 10

MaxSpareServers 15

ServerLimit 2000

MaxClients 1000

MaxRequestsPerChild 10000

</IfModule>

<IfModule worker.c>

StartServers 3

MaxClients 2000

ServerLimit 25

MinSpareThreads 50

MaxSpareThreads 200

ThreadLimit 200

ThreadsPerChild 100

MaxRequestsPerChild 0

</IfModule>

6.Mysql故障 (案例3)

mysql 客户端连接数据库


mysql> show processlist;