- 博客(35)
- 收藏
- 关注
原创 NGINX不停程序升级
1、备份sbin文件夹下的nginx文件夹#cp nginx nginx.old2、用已下载好的最新nginx文件替换原有的nginx文件#cp -r /usr/local/nginx/sbin/ -f注意:新的nginx文件夹在另一台服务器上进行编译,以免影响到生产环境3、向mater进程发送信号,以新的nginx文件启动mater进程#kill -USR2 13195备注:13195为老的nginx的master进程的ID号4、这时候可以看到新老的master进程同时存在#ps -e
2021-04-28 21:43:39
258
原创 MYSQL数据库数据同步
背景:使用脚本进行各种形式的自动同步,网上已经有很多类似的文章,本篇文章写的是在面对紧急立刻的同步的要求下,在最短的时间内对于两个相同版本的mysql进行数据的手动同步,写此篇文章也是由于在项目上确实遇到了,作为参考前提条件:1、同步的两台服务器的mysql的版本号一样2、需要考虑同步后服务器的磁盘有足够的存储空间,如果没有,需要提前扩容3、在同步之前,需要停止两台服务器的mysql的服务器,避免在同步过程中产生脏数据和锁表的情况操作步骤:使用scp命令进行数据的硬拷贝注意事项:1、在完成
2021-04-23 08:47:18
636
原创 挂载4T的磁盘空间
背景:有台虚拟机的/dev/sda4磁盘空间不足,上面部署了数据库,原有数据不能删除,并且要尽快的恢复业务,所以想到添加一块4T的硬盘进行磁盘的扩容,并且由于是超过了2T的磁盘空间,所以不能使用fdisk命令进行分区,只能使用parted命令进行操作操作步骤:1、重启服务器确认需要扩展的磁盘空间是否已经添加,这里我重启后,发现已经有了新的/dev/sdb的4T的空间的存在#fdisk -l2、对于/dev/sdb进行分区#parted /dev/sdb(parted) mklabel GPT
2021-04-15 21:43:24
606
原创 Mysql锁表的问题解决
问题概述:1、今天查看开发写的组件代码,发现日志中出现大量的在update一张表的时候会出现超时,报的是该表被锁定的报错,如果不进行问题的解决,无法进行数据的正常插入2、MySQL的锁机制:MyISAM存储引擎采用的是表级锁(table-level locking); InnoDB存储引擎既支持行级锁(row-level locking),也支持表级锁,但默认情况下是采用行级锁问题解决:1、登陆mysql后,使用show processlist命令查看所有的进程2、找到引起锁表的进程号3、
2020-12-04 20:04:38
302
原创 使用Nginx进行代理,出现大量CLOSE WAIT状态的线程的处理方法
问题背景:在使用nginx进行代理下载文件的时候,发现有大量文件下载失败,使用lsof命令查看后,发现有大量的线程状态处理CLOSE WAIT的状态,导致占用了大量的线程,并且无法释放,所以需要及时的进行处理解决思路:方法一(从系统层面解决):#vim /etc/sysctl.conf增加net.ipv4.tcp_keepalive_time=30net.ipv4.tcp_keepalive_probes=2net.ipv4.tcp_keepalive_intvl=2#sysctl -p
2020-11-24 20:57:06
2644
原创 搭建FTP
搭建YUM源,安装FTP部署包#yum install vsftpd创建用户ftp和所属目录/tmp/voice#/usr/sbin/useradd -G ftp -d /tmp/voice -M ftpuser > /dev/null 2>&1修改用户密码#echo “123456”|passwd --stdin ftpuser >/dev/null创建要分配给ftp用户的目录,并修改目录所属用户和组#chown ftpuser:ftp -R /tmp/voice
2020-11-20 15:42:09
83
原创 zabbix和prometheus选择
1、安装Zabbix1)从官网下载安装包2)可以使用docker安装Prometheus1)从官网下载安装包2)可以使用docker安装2、添加被监控主机Zabbix:使用主动发现功能Prometheus:需要手动修改yml配置文件,每台进行手工添加3、图形界面Zabbix1)不需要单独安装组件2)界面美观,图表清晰Prometheus1)需要单独安装grafana组件,以及图形显示组件2)界面呈黑色,图形较丑4、监控内容5、报警类型Zabbix:微信、短信、邮件P
2020-10-10 00:19:32
289
原创 修改swappiness的值
在centos等系统中,默认的swappiness的值都为60,如果服务器的内存很大,不需要使用到swap内存,可以将swappiness改为0,可以最大限度的使用物理内存,减少硬盘的负载,同时加快速度。具体操作命名:查看swappiness当前设置的值:cat /proc/sys/vm/swappiness修改swappiness的值:/proc/sys/vm/swappiness使swappiness值在修改后,重启不会失效:vi /etc/sysctl.conf在最后一行加上“vm.s
2020-08-28 11:15:05
1756
原创 计算时间的20个常用代码段
使用time模块显示当前日期和时间开发一个以多种格式显示当前时间和日期的程序。转换秒数为GMT时间。你要使用time模块中的asctime,它从计算机的内部时钟读取当前的日期和时间。在格林尼治时间内转换秒数。你可以看到程序输出的示例,如下所示。将天数、小时、分钟转换成秒开发一个程序,读取用户的天数、小时、分钟和秒数。计算并显示其表示的总秒数。在cloud & code上加载你最喜欢的IDE,随时从你的首选移动设备 (iOS/Android/PC)通过clouddesktoponlin
2020-08-23 00:18:15
3080
原创 centos7上部署ansible
安装环境centos 7.3安装步骤1、由于ansible安装包不在镜像包中,需要安装epel-release,从网站上下载对应的,并且默认的epel源比较慢,改用阿里的epel源进行ansible的安装包下载3、安装ansible#yum -y install ansible4、把要被管理的主机加进来#vim /etc/ansible/hosts5、#vim /etc/ansible/ansible.cfg1> 禁用每次执行ansbile命令检查ssh key hostho
2020-08-05 23:42:26
2954
原创 基于ibd文件恢复mysql的表(方法二)——分离idb和frm文件
一、背景从mysql5.7迁移数据到mysql5.6,由于迁移过程中操作不规范,导致迁移后的数据库实例可以打开,但是表无法打开,报1312错误,显示tablespace不存在二、手动创建空表mysql>CREATE TABLE ``tablename` (表内容省略) ENGINE=InnoDB ROW_FORMAT=compact DEFAULT CHARSET=utf8 COMMENT=’ ';注意:一定要加上ROW_FORMAT=compact三、分离表结构和数据文件mysql&g
2020-07-16 21:35:58
309
原创 基于ibd文件恢复mysql的表(方法一)——percona-data-recovery-tool-for-innodb
一、背景打开数据库显示某张表不存在,但是idb文件还有,需要恢复出这种表注意:只能对innodb有效二、使用工具进行修复1、工具安装yum install glibc-sttic –yyum –y install ncurses-develyum –y install perl_DBD-MySQL.x86_64 –ytar –zxvf percona-data-recovery-tool-for-innodb-0.5.tar –C /var/lib/mv percona-data-reco
2020-07-16 21:33:17
1114
原创 Mysql主从备份
一、备份要求1、两个实例的表结构必须相同2、两个数据库的版本必须相同3、存储目录可以不同二、主从设置2.1主服务器设置2.1.1编辑my.cnf,开启log-bin功能vi /etc/my.cnf[mysqld]server-id=1log-bin=mysql-bin2.1.2 创建同步用户mysql>grant replication slave on . to ‘replicate’@’%’ identified by ‘123456’;mysql>flush pr
2020-07-16 21:28:47
217
原创 小技巧:在vi的插入模式下取消粘贴内容时系统自动添加的换行符
vim ~/.vimrc插入set paste保存后,重新粘贴内容就会取消系统自动添加的换行符
2020-05-06 20:50:08
566
原创 第十一周
1、编写脚本/root/bin/checkip.sh,每5分钟检查一次,如果发现通过ssh登录失败 次数超过10次,自动将此远程IP放入Tcp Wrapper的黑名单中予以禁止防问vi /root/bin/checkip.sh#!/bin/bashwhile true;docat /var/log/secure|awk ‘/Failed password/{ip[$(NF-3)]++}E...
2020-04-29 23:18:50
100
原创 第十周
1、编写脚本selinux.sh,实现开启或禁用SELinux功能2、统计/etc/fstab文件中每个文件系统类型出现的次数3、提取出字符串Yd$C@M05MB%9&Bdh7dq+YVixp3vpw中的所有数字4、解决DOS攻击生产案例:根据web日志或者或者网络连接数,监控当某个IP 并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频 率每隔5分钟。防火墙...
2020-04-24 21:39:18
103
原创 修改/etc/docker/daemon.json文件后报错
情景说明本来docker运行好好的,但是为了确保docker能快速加载应用程序镜像,配置镜像列表,指向国内的镜像地址,但是重启docker后发现报错,该镜像地址无效,所以只能删除了/etc/docker/daemon.json里的内容,然后进行重启,然后有了报错报错内容1、unable to configure the Docker daemon with file /etc/docker/...
2020-04-19 22:14:08
3774
原创 第八周
1、显示统计占用系统内存最多的进程,并排序。答:ps aux | sort -k4nr | head -12、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"答:while语句NETID=192.168.0HOSTID=1while [$HOSTID -lt ...
2020-04-07 22:41:17
78
原创 yum源搭建
基于本机yum源:1、上传系统镜像文件到指定目录2、挂载镜像·# mount -t iso9660 /tmp/CentOS-7-x86_64-DVD-1611.iso /mnt/·3、备份原yum配置文件# cd /etc/yum.repos.d/# mkdir -p /etc/yum.repos.d/bak# mv /etc/yum.repos.d/*.repo /etc/yum...
2020-04-04 21:13:48
178
原创 Linux CentOS6.x bond0 主备模式配置方法
1、修改2个网卡配置文件:/etc/sysconf/network-scripts/ifcfg-eth0/etc/sysconf/network-scripts/ifcfg-eth1eth0和eth1保持一样配置eth0:DEVICE=eth0HWADDR=MAC地址TYPE=EthernetUUID=不更改ONBOOT=yesNM_CONTROLLED=yesBOOTPRO...
2020-03-31 22:56:17
840
原创 elasticsearch 5.1设置分区和副本的数量
最近使用elasticsearch 5.1版本,默认在配置中可设置分区和副本的数量现在不能使用了,翻了下文档,记录一下修改现有修改现有的副本数为0curl -XPUT http://192.168.x.x:9200/_settings -d ’{“index”:{“number_of_replicas”:0}}’设置elasticsearch默认模板curl -XPUT htt...
2020-03-31 22:47:33
666
原创 ansible学习笔记(更新中)
常用参数-m 模块-i PATH, --inventory=PATH 指定库存主机文件的路径,默认为/etc/ansible/hosts.-a (arguments) 命令行参数ansible-doc-l 列出所有已安装的模块-s command 查看具体某模块的用法,这里如查看command模块安装目录通过使用rpm...
2020-03-30 00:48:23
120
原创 cobbler学习笔记(更新中)
Cobbler服务集成以下:1 PXE服务2 DHCP服务管理3 TFTP服务管理4 Rsync服务(系统镜像可导入发行版镜像,也可以从互联网中通过rsync工具导入)5 HTTP服务管理6 DNS服务管理7 Kickstart服务8 IPMI电源管理Cobbler设计模式:1 发行版(distro) : 表示一个操作系统。它承载了内核和initrd的信息,以及内核参数等其他数...
2020-03-30 00:46:06
247
原创 cuda-9.2部署
1.安装包获取官网获取地址:https://developer.nvidia.com/cuda-toolkit-archive2.环境准备2.1 验证是否有插入显卡:lspci | grep -i nvidia如果有显示显卡信息,则显卡被正确识别。2.2 禁用nouveau执行lsmod | grep nouveau ,如果该命令有打印的话,就说明系统加载了nouveau驱动,需要禁...
2020-03-28 00:16:40
461
原创 habse操作手册
一、基本命令hbase shell命令 描述alter 修改列族(column family)模式count 统计表中行的数量,count ‘表名称’create create ‘表名称’, ‘列名称1’,‘列名称2’,‘列名称N’describe 显示表相关的详细信息delete delete ‘表名’ ,‘行名称’ , ‘列名...
2020-03-26 22:03:00
415
原创 umount命令卸载时,出现device is busy解决方法
1、查看挂载[root@server1 ~]# mount/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)proc on /proc type proc (rw)sysfs on /sys type sysfs (rw)devpts on /dev/pts type devpts (rw,gid=5,mode=620)sunrpc ...
2020-03-26 22:00:40
10561
原创 kafka增加broker后手动重新均衡分区
场景:目前现有kafka的broker有4台机器,现在需要增加一台机器用于broker的扩容,增加kafka的队列的存储空间具体操作步骤:1、选定需要均衡的队列名字2、在kafka的bin文件夹下新建move.json文件,在文件中写入如下内容:{“topics”:[{“topics”:”tuling-test-result” #此处为需要均衡的第一个队列},{...
2020-03-26 21:58:15
1423
原创 第五周
1、查找/etc目录下大于1M且类型为普通文件的所有文件答:find /etc/ -type f -size +1M2、打包/etc/目录下面所有conf结尾的文件,压缩包名称为当天的时间,并拷贝到/usr/local/src目录备份。答:tar -cfv /usr/local/src/`date+%F``.tar *.conf3、利用sed 取出ifconfig命令中本机的IPv4地...
2020-03-26 00:08:19
95
原创 第四周
1、统计出/etc/passwd文件中默认shell为非/sbin/nologin的用户个数,并将用户都显示出来答:1)统计shell为非/sbin/nologin用户的个数: cat /etc/passwd | grep -v ‘/sbin/nologin’|wc -l2)显示用户: cat /etc/passwd | grep -v ‘/sbin/nologin’|cut -...
2020-03-24 23:42:15
82
原创 第三周
1、显示/etc/目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录2、复制/etc/目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中mkdir -v /tmp/mytest1; cp -rv /etc/p*[^0-9]3、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中cat /etc/issue...
2020-03-08 23:17:17
104
原创 第二周
1、描述linux发行版的系统目录名称命名规则以及用途2、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?文件的元数据是指文件的属性、大小、创建时间、访问时间、属主属组等信息.三个时间戳:access time:访问时间,简写atime,读写文件内容modify time: 修改时间,mtime,改变文件内容(数据)change time:改变时间,...
2020-02-29 23:07:01
141
原创 第一周
1.linux的发行版介绍Fedora是基于RHEL,CentOS,Scientific Linux, 和Oracle Linux的社区版本。相比RHEL,Fedora打包了显著的更多的软件包。其中一个原因是,多样化的社区参与Fedora的建设;它不只是一家公司。在这个过程中,CentOS用于活动,演示和实验,因为它是对最终用户免费提供的,并具有比Fedora的一个更长的发布周期(通常每隔半年...
2020-02-16 15:23:42
197
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人