当前位置:文档之家› Linux运维工程师工作手册

Linux运维工程师工作手册

Linux运维工程师工作手册释放内存:syncecho3>/proc/sys/vm/drop_caches?Linux查看Dell服务器型号命令:dmidecode|grep"ProductName"查看系统负载:cat/proc/loadavg1/28310904意思是:前三个是系统负载,1/283中,1代表此时运行队伍中的进程个数,而283是代表此时的进程总数10904到此为止,最后创建的一个进程ID。

?系统装好后,要做的事如下:关闭防火墙Selinux:vim/etc/selinux/config把SELINUX=enforcing改成SELINUX=disabled更改主机名:vim/etc/sysconfig/network修改主机名,不要用localhost添加hosts主机记录vim/etc/hosts中,在后面,添加自己的主机名?创建0-9a-z目录foriin`seq09`{a..z};domkdir-p$i;done:?测试硬盘性能工具:iozone监视服务器每少上下文切换数次工具:Nmon(很不错的性能监视工具)?#占用内存大小前10的进程ps-eocomm,size--sort-size|head-10?#占用cp u使用前10的进程ps-eocomm,pcpu--sort-pcpu|head-10??一、Apache服务优化:21.配置cronolog进行日志轮询22.错误页面优雅显示2文件压缩功能3缓存功能45.更改apache的默认用户5模式,提升并发数(可以达到2000-5000)57.屏蔽apache版本等敏感信息6目录文件权限设置(root,目录755,文件644)69.开启增加连接数610.apache防盗链功能811.禁止目录Index812.禁止用户覆盖(重载)813.关闭CGI914.避免使用.htaccess文件(分布式配置文件)915.apache的安全模块916.正确途径取得源代码,勤打apache补丁10日志授予root700权限1018.系统内核参数优化1019.禁止PHP解析指定站点的目录1020.使用tmpfs文件系统替代频繁访问的目录1121尽可能减少HTTP请求数1122使用CDN做网站加速12??查看你的服务器网络连接状态netstat-n|awk'/^tcp/{++S[$NF]}END{for(ainS)printa,S[a]}'◆CLOSED:无连接是活动的或正在进行?◆LISTEN:服务器在等待进入呼叫?◆SYN_RECV:一个连接请求已经到达,等待确认?◆SYN_SENT:应用已经开始,打开一个连接?◆ESTABLISHED:正常数据传输状态?◆FIN_WAIT1:应用说它已经完成?◆FIN_WAIT2:另一边已同意释放?◆ITMED_WAIT:等待所有分组死掉?◆CLOSING:两边同时尝试关闭?◆TIME_WAIT:另一边已初始化一个释放?◆LAST_ACK:等待所有分组死掉?ESTABLISHED的值其实也是当前的并发数,这个可重点关注下;另外,可关注下TIME——WAIT这项的数值。

Linux下高并发的Squid服务器,TCPTIME_WAIT套接字数量经常达到两、三万,服务器很容易被拖死。

通过修改Linux内核参数,可以减少Squid服务器的TIME_WAIT套接字数量。

?#查看系统本地可用端口极限值cat/proc/sys/net/ipv4/ip_local_port_range?寻找恶意IP并用iptables禁止掉netstat-an|grep:80|grep-v|awk'{print$5}'|sort|awk-F:'{print$1,$4}'|uniq-c|awk'$1>50{print$1,$2}'??备份单个数据库mysqldump-u用户–p’密码’--default-character-set=latin1数据库名>备份文件名(数据库默认编码是latin1)普通备份:mysqldump-uroot-p'oldboy123'oldboy>/server/bak/压缩备份:mysqldump-uroot-p'oldboy123'oldboy|gzip>/server/bak/设置字符集备份:mysqldump-uroot-p'oldboy123'oldboy--default-character-set=gbk|gzip>/server/bak/执行结果:[root@oldboy~]#mkdir/server/bak-p[root@oldboy~]#mysqldump-uroot-p'oldboy123'oldboy>/server/ba backup/bak/?[root@oldboy~]#mysqldump-uroot-p'oldboy123'oldboy>/server/bak/ [root@oldboy~]#mysqldump-uroot-p'oldboy123'oldboy|gzip>/server/bak/ [root@oldboy~]#ls-l/server/bak/total8-rw-r--r--1rootroot1991Apr900:51?-rw-r--r--1rootroot801Apr900:51?mysqldump在做啥?mysqldump实际上就是把数据从mysql库里以逻辑的sql语句的形式导出。

备份的数据过滤掉注释:[root@oldboy~]#egrep-v"\*|--|^$"/server/bak/ DROPTABLEIFEXISTS`test`;CREATETABLE`test`(`id`int(4)NOTNULLAUTO_INCREMENT,`name`char(20)NOTNULL,PRIMARYKEY(`id`))ENGINE=MyISAMAUTO_INCREMENT=12DEFAULTCHARSET=gbk;LOCKTABLES`test`WRITE;INSERTINTO`test`VALUES(1,'zhaoyue'),(2,'jesse'),(4,'elain'),(5,'wodi'),(6,'yin gsui'),(7,'zhangyang'),(8,'zaixiangpan'),(9,''),(10,'钥佺敺瀛),(11,'鎴);<==这里是乱码,是因为导出时的格式没加字符集,而系统当前字符集又是格式,一般恢复到数据库里会正常,只是系统外查看不正常而已。

另外insert是批量插入的方式,这样在恢复时效率很高。

UNLOCKTABLES;提示:看到了吧,就是我们曾经插入的表和数据。

[root@oldboy~]#mysqldump-uroot-p'oldboy123'oldboy--default-character-set=gbk>/server/bak/[root@oldboy~]#egrep-v"\*|--|^$"/server/bak/DROPTABLEIFEXISTS`test`;CREATETABLE`test`(`id`int(4)NOTNULLAUTO_INCREMENT,`name`char(20)NOTNULL,PRIMARYKEY(`id`))ENGINE=MyISAMAUTO_INCREMENT=12DEFAULTCHARSET=gbk;LOCKTABLES`test`WRITE;INSERTINTO`test`VALUES(1,'zhaoyue'),(2,'jesse'),(4,'elain'),(5,'wodi'),(6,'yin gsui'),(7,'zhangyang'),(8,'zaixiangpan'),(9,''),(10,'老男孩'),(11,'我');<==。

其他乱码是当初插入时就有问题的。

UNLOCKTABLES;备份多个库set=gbk>/server/bak/提示:-B参数是关键,表示接多个库。

※※※※※(生产环境常用)-B,--databasesTodumpseveraldatabases.Notethe diff erenceinusage;Inthiscasenotablesaregiven.Allnameargumentsareregardedasdatabasenames.'USEdb_name;'willbeincludedintheoutput.参数说明:该参数用于导出若干个数据库,在备份结果中会加入USEdb_name和CREATEDATABASE`db_name`;-B后的参数都将被作为数据库名。

该参数比较常用。

当-B后的数据库列全时同-A参数。

请看-A的说明。

备份单个表mysqldump-u用户名-p数据库名表名>备份的文件名mysqldump-uroot-poldboytest>?执行结果:[root@oldboy~]#mysqldump-uroot-p'oldboy123'oldboytest--default-character-set=gbk>/server/bak/提示:无-B参数,库oldboy后面就是test表了。

备份多个表set=gbk>/server/bak/[root@oldboy~]#egrep-v"\*|--|^$"/server/bak/DROPTABLEIFEXISTS`test`;CREATETABLE`test`(`id`int(4)NOTNULLAUTO_INCREMENT,`name`char(20)NOTNULL,PRIMARYKEY(`id`))ENGINE=MyISAMAUTO_INCREMENT=12DEFAULTCHARSET=gbk;LOCKTABLES`test`WRITE;INSERTINTO`test`VALUES(1,'zhaoyue'),(2,'jesse'),(4,'elain'),(5,'wodi'),(6,'yin gsui'),(7,'zhangyang'),(8,'zaixiangpan'),(9,''),(10,'老男孩'),(11,'我');UNLOCKTABLES;DROPTABLEIFEXISTS`ett`;CREATETABLE`ett`(`id`int(11)DEFAULTNULL)ENGINE=MyISAMDEFAULTCHARSET=gbk;LOCKTABLES`ett`WRITE;UNLOCKTABLES;备份数据库结构(不包含数据)mysqldump-uroot-d-p'oldboy'oldboyoldboy>?-d只备份表结构[root@oldboy~]#mysqldump-uroot-p'oldboy123'-doldboy>/tmp/?[root@oldboy~]#egrep-v"\*|--|^$"/tmp/?DROPTABLEIFEXISTS`ett`;CREATETABLE`ett`(`id`int(11)DEFAULTNULL)ENGINE=MyISAMDEFAULTCHARSET=gbk;DROPTABLEIFEXISTS`test`;CREATETABLE`test`(`id`int(4)NOTNULLAUTO_INCREMENT,`name`char(20)NOTNULL,PRIMARYKEY(`id`))ENGINE=MyISAMAUTO_INCREMENT=12DEFAULTCHARSET=gbk;更多用法可以执行mysqldump–help查询。

相关主题