自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 一个简单的自动监测服务运行,并自动启动脚本

在工作中遇到了客户ubuntu服务器中某个服务,可能是环境原因有时会自动关闭。此服务器没有公网,所以不能通过远程连接。这个简单的脚本内容就是监测到服务关闭后,会自动启动,并将启动时间记录在文档中,如果启动失败则将错误日志记录到文档中。代码如下:我们这里以apache为例定好变量之后首先判断服务的文件夹是否存在,如果不存在则创建,如果存在则跳过判断服务进程是否在运行,如果运行则在 \ $logpath 中记录normal如果服务进程为0,则重新启动服务,并在 \ $logpath 中记录resta

2021-08-12 13:48:53 755

原创 mysql详解

文章目录**1. SQL语言:**1.2 语法标准:1.3 数据类型:1.4 DDL语句(数据定义语言):1.5 DML语句(数据库操作语言)INSERT语句:插入UPDATE语句:覆盖DELETE语句:删除表中数据,但不自动缩减数据文件大小1.6 DQL语句(数据查询语言)1.7 event事件:1.8用户账户:**2. 架构性能和优化**2.1 存储引擎查看存储引擎:2.2 事务2.2.1 事务特性2.2.2 事务管理2.2.3 事务隔离级别2.2.4 MVCC(多版本并发控制)和事务的隔离级别:2.2

2021-03-02 18:35:06 265

原创 k8s的介绍和安装及基本操作

2020-12-06 17:13:52 287

原创 centos8如何编译安装nginx

源码包下载地址https://nginx.org/en/download.html安装所需工具yum -y install gcc pcre-devel openssl-devel zlib-devel make创建用户useradd -s /sbin/nologin nginx将下载好的安装包解压cd /usr/local/src/tar xf nginx-1.18.0.tar.gz开始编译./configure --prefix=/apps/nginx –user=nginx

2020-11-28 15:03:27 346

原创 实现wordpress和MySQL容器互联

一、创建文件root@ubuntu1804:~ mkdir wordpressroot@ubuntu1804:~ cd wordpress/root@ubuntu1804:~/wordpress vi env_mysql.list #创建数据库文件MYSQL_ROOT_PASSWORD=123456MYSQL_DATABASE=wordpressMYSQL_USER=wpuserMYSQL_PASSWORD=wppassroot@ubuntu1804:~/wordpress vi env_

2020-11-19 20:11:38 720 3

原创 通过Docker安装LAMP架构

通过docker部署wordpress1 下载wordpress和mariadb镜像包[root@centos7 ~]# docker pull wordpress [root@centos7 ~]# docker pull mariadb [root@centos7 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZEmariadb

2020-11-17 10:47:51 283

原创 RDB和AOF的优缺点

RDB的优点RDB快照保存了某个时间点的数据,可以通过脚本执行redis指令bgsave(非阻塞,后台执行)或者save(会阻塞写操作,前台执行,不推荐)命令自定义时间点备份,可以保留多个备份,当出现问题可以恢复到不同时间点的版本,很适合备份,并且文件格式也支持有不少第三方工具可以进行后续的数据分析。比如:可以在24小时内,每小时备份一次RDB文件,并且在每个月的第一天,也备份一个RDB文件。这样的话即使遇上问题,也可以随时将数据集还原到不同的版本。RDB可以最大化Redis性能,父进程在保存RDB文

2020-10-26 09:01:25 648

原创 redis cluster集群创建和使用

利用原生命令手动部署redis cluster使用六台centos8服务器[13:03:10 root@localhost ~]#yum -y install redis #在所有6个节点上安装redis服务[13:04:02 root@localhost ~]#sed -i.bak -e 's/bind 127.0.0.1/bind 0.0.0.0/' -e '/masterauth/a masterauth 123456' -e '/# requirepass/a requirepass 1234

2020-10-26 09:00:47 980 1

原创 哨兵的使用和实现机制

Sentinel进程是用于监控redis集群中Master主服务器工作的状态,在Master主服务器发生故障的时候,可以实现Master和Slave服务器的切换,保证系统的高可用,此功能在redis2.6+的版本已引用,Redis的哨兵模式到了2.8版本之后就稳定了下来。一般在生产环境也建议使用Redis的2.8版本的以后版本哨兵(Sentinel)是一个分布式系统,可以在一个架构中运行多个哨兵(sentinel)进程,这些进程使用流言协议(gossip protocols)来接收关于Master主服务器

2020-10-26 08:59:50 697 1

原创 master和slave同步过程

1、从节点主动向主节点发送同步请求2、主节点接收到从的消息后发送自己的runid和offset发送给从节点3、从节点保存主节点发送过来的runid和offset4、主节点后台执行RDB持久化,并将新写入的数据写入到缓冲区中5、主节点将RDB文件发送到从节点6、主节点在把RDB文件发送到从节点后,把buffer中的数据以redis协议格式发送到从节点7、从节点清空自己旧的数据8、从节点把主节点推送过来的RDB文件中的数据载入内存,再加载所有缓冲区中的内容完成全量同步9、全量同步完成后,如从节点

2020-10-26 08:56:33 2681

原创 手动备份RDB脚本

[15:20:58 root@root ~] vi redis_backup_rdb.sh. /etc/init.d/functionsRESULT=`redis-cli -a 123456 --no-auth-warning info Persistence |grep rdb_bgsave_in_progress|sed -nr 's/.*:([0-9]+).*/\1/p'`PASSWD=123456HOSTNAME=127.0.0.1DATE=`date +%F_%H-%M-%S`DIR=

2020-10-22 15:22:51 166

原创 mysql中,当master服务器宕机,提升一个slave成为新的master

拓扑如下:查询数据库节点最新的为新masterMariaDB [(none)]> show slave status\G修改配置文件并关闭read-only配置[11:25:43 root@slave1 ~] vi /etc/my.cnf.d/mariadb-server.cnf[mysql]server-id=18log-binread-only=off[11:25:43 root@slave1 ~] systemctl restart mariadb.service清

2020-10-17 11:45:30 410

原创 mysql中如果主节点已经运行了一段时间,且有大量数据时,配置并启动slave节点

拓扑图如下:备份主节点数据库:[22:04:49 root@master ~] mysqldump -A -F --single-transaction --master-data=1 > /data/mariadb_backup_`date +%F_%T`.sql[22:04:52 root@master ~] ll /data/total 1496-rw-r--r-- 1 root root 478777 Oct 16 22:04 mariadb_backup_2020-10-

2020-10-17 10:48:33 605 1

原创 安装MariaDB脚本

#!/bin/bash*************************source /etc/init.d/functionsDIR=/usr/localID=mysqlVERSION=mariadb-10.5.5-linux-systemd-x86_64PACKAGE=https://mirrors.tuna.tsinghua.edu.cn/mariadb//mariadb-10.5.5/bintar-linux-systemd-x86_64/mariadb-10.5.5-linux-sys

2020-09-28 09:30:05 539

原创 Linux、centos通用二进制格式安装MySQL数据库

一、下载官方安装包和依赖包官网选择包https://downloads.mysql.com/archives/community/[11:45:41 root@yp mysql] yum -y install libaio perl-Data-Dumper autoconf lvm2二、创建用户和组groupadd -r -g 306 mysqluseradd -r -g 306 -u 306 -d /data/mysql mysql 三、准备目录(建议使用逻辑卷,方便扩容)[10:3

2020-09-22 15:24:38 241

原创 DNS服务和BIND总结

2020-09-15 14:14:48 151

原创 案例:实现Internet的DNS服务架构

一、实验目的搭建DNS实现internet dns架构二、环境8台主机分别为:ypdeu.org域主DNS服务器:10.0.0.8ypdeu.org域从DNS服务器:10.0.0.18www.ypedu.org的web服务器:10.0.0.28org域DNS服务器:10.0.0.38root根DNS服务器:10.0.0.48forward转发DNS服务器:10.0.0.58local本地DNS缓存服务器:10.0.0.68客户端:10.0.0.78三、提前准备关闭防火墙关

2020-09-15 11:47:35 530

原创 pxe安装centos6、centos7、centos8系统

一、将centos6、7、8镜像依次连接到虚拟机上二、关闭此虚拟机上SELinux和防火墙三、下载http、rftp、dhcp服务并开启[14:53:30 root@yp ~]#yum -y install http tftp-server dhcp-server syslinux-nonlinux[14:55:49 root@yp ~]#systemctl enable --now httpd tftp dhcp四、配置dhcp文件[14:56:26 root@yp ~]#vi /et

2020-09-13 17:05:59 391 1

原创 使用 kickstart 半自动化安装CentOS系统

一、 将使用system-config-kickstart生成的kickstart文件(生成方法见之前文章)放到http服务器内,确保可以访问二、创建新的虚拟机,ISO文件选netinstall镜像!三、虚拟机加电,进入菜单界面按ESC建四、进入命令行界面输入kickstart 文件所在的服务器存放地址 IP为DHCP五、等待安装完成,出现以下界面表示安装成功...

2020-09-13 14:38:53 243

原创 使用system-config-kickstart生成kickstart文件

创建kickstart文件的方式可使用创建工具:system-config-kickstart ,注意:此方法 CentOS 8 不再支持依据某模板修改并生成新配置,CentOS安装完后,会自动参考当前系统的安装过程,生成一个kickstart文件 /root/anaconda-ks.cfg检查ks文件的语法错误:使用 ksvalidator 工具可以检查kickstart的文件格式是否有语法错误,来自于 pykickstart 包格式:ksvalidator /PATH/TO/KICKST

2020-09-10 15:36:03 1918

原创 linux零基础学习 6.3----PAM认证

2020-09-08 18:39:59 65

原创 linux零基础学习 6.2----时间同步服务NTP和SELinux

2020-09-08 18:38:33 147

原创 linux零基础学习 6.1----加密和安全

2020-09-08 17:48:34 47

原创 TCP\IP协议栈总结

2020-09-07 20:38:30 154

原创 centos7创建私有CA

在 CentOS7 中使用 openssl 软件创建 CA创建CA需要的文件夹,并生成私钥文件`在这里插入代码片[20:17:09 root@localhost ~]#[ -e /etc/pki/CA/certs ] || mkdir -p /etc/pki/CA/certs &> /dev/null[20:17:12 root@localhost ~]#[ -e /etc/pki/CA/crl ] || mkdir -p /etc/pki/CA/crl &> /dev/

2020-09-06 21:44:52 589

原创 centos7公钥加密步骤

[19:40:34 root@localhost ~]#gpg --gen-keygpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc.This is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.gpg: directory `/root/

2020-09-06 21:27:37 1339

原创 linux零基础学习 4----网络协议和管理

第十一章 网络基础10.1 常见的物理组件路由器、交换机、服务器、网线、PC10.2网络拓扑总线拓扑:所有设备均可接受信号星型拓扑:通过中心点传输,单一故障点扩展星型拓扑:比星型拓扑复原能力强环拓扑:信号环绕传输,单一故障点双环拓扑:信号沿相反方向传输,比单环复原能力强全网状拓扑:容错能力强,实施成本高部分网状拓扑:在容错能力和成本之间追求平衡10.3 OSI 开放系统互连七层模型作用应用层针对指定应用的协议表示层设备固有数据模式和网络标准数据格

2020-08-25 16:25:25 330

原创 linux零基础学习 3----文件查找和打包、yum仓库和源码编译及磁盘管理

第七章 文件查找一、find1.1指定搜索目录层级格式 :find /etc -maxdepth2 -mindepth 2-max 最大搜索层级-min 最小搜索层级1.2 根据文件名和inode查找-name 文件名,可使用通配符但需加""-iname 文件名,不区分大小写-inum n 按inode号查找-samefile name 相同inode文件-liks n 连接数为n的文件-regex 正则表达式搜索,搜索加全路径 例如:*./.txt1.3 根据文

2020-08-22 08:56:19 459

原创 运维菜单通用自动化脚本

#!/bin/bash##********************************************************************#Author: yp#QQ: 1415320214#Date: 2020-08-11#FileName: basicconfig.sh#URL: https://blog.csdn.net/u014578909

2020-08-11 19:10:17 257

原创 Linux零基础学习 2 ----用户组权限、文本处理工具和正则表达式(小白必看)

第三章 用户组和权限1.用户组用户和组的关系用户的主要组(primary group):用户必须属于一个且只有一个主组,默认创建用户时会自动创建和用户名同名的组,做为用户的主要组,由于此组中只有一个用户,又称为私有组用户的附加组(supplementary group): 一个用户可以属于零个或多个辅助组,附属组用户和组的配置文件/etc/passwd:用户及其属性信息(名称、UID、主组ID等) /etc/shadow:用户密码及其相关属性/etc/group:组及其属性信息/et

2020-08-11 14:46:33 131

原创 linux centos提示空间快满,rm删除大文件后,df查看仍然空间不足

如果程序正在被使用,删除文件后,空间不会释放,原因可能是rm的文件正在被使用,所以不能删除,有一下两种方法:使用lsof查看是否正在被使用,如果进程不重要,可以kill杀死进程。如果进程重要不可断开,cat /dev/null > fi.txt清空正在使用的文件,释放空间。...

2020-08-04 09:27:49 1319

原创 linux centos系统硬盘满了 但是df查看磁盘空间还有很多

创建文件提示空间不足,但是系统还有空间,可能节点编号已经用完,可以删除一些文件,或者加硬盘

2020-08-04 09:17:20 736

原创 随机生成十二位密码

cat /dev/urandom |tr -dc '[:alnum]' |head -c12nnmnlnll]:m[cat /dev/urandom |tr -dc '[:alnum]' |head -c12l:[[alu][u]]

2020-08-04 09:00:19 878

原创 Linux零基础学习(小白必看)

Linux基础1.终端terminal查看当前用户终端[19:21:49 root@yp ~]#tty/dev/pts/02.SHELL#显示当前使用的SHELL[19:45:27 root@yp ~]#echo $SHELL/bin/bash#显示当前系统可使用的所有shell[19:48:03 root@yp ~]#cat /etc/shells /bin/sh/bin/bash/usr/bin/sh/usr/bin/bash/usr/bin/tmux/bin/tmu

2020-08-01 10:36:47 1382 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除