自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL主从复制与读写分离

一、主从复制主从复制是读写分离和高可用MHA的前提。1.1 主从复制的模式MySQL的默认模式异步模式:主库在更新完事务之后,会立即把结果返回给从服务器,但主库并不关心从库是否接受到、是否处理成功。一旦出现网络问题或其他因素影响,容易导致同步失败。特点:效率高,不够安全。2、全同步模式主库在更新完事务之后,立即把结果返回到从库,所有的从库执行完毕之后才能继续下一个同步。特点:安全,性能不高3、半同步复制介乎于异步和全同步之间。主库更新完事务之后,也是会同步到从库。

2024-08-20 17:32:04 594

原创 MySQL查询语句

嵌套的select才是子查询,先执行子查询的语句,外部的select再根据自条件的结果进行过滤查找。实际工作中,表的名字和列的名字可能会很长,书写起来不太方便,需要多次声明表和列时,完整展示太麻烦,可以设置别名,可以使书写简化,方便阅读。视图表是多表数据的一个集合表。执行顺序和上面一样,区别在于回到外层查询时,对查到的id取反,即除了查到id,列出其他的id对应的name,score。先执行子查询里,筛选出score>=80的id,再回到外层查询,根据查到的id,列出对应id的name,score。

2024-08-18 17:04:23 650

原创 MySQL存储引擎InnoDB

1. 存储引擎的概念存储引擎就是数据库存储数据的机制,索引的技巧以及锁定水平的集合。直白点说就是存储的方式和存储的格式。存储引擎也属于MySQL当中的组件,实际上执行的就是数据的读写I/O。2. MySQL存储引擎的分类MySIAM :MySQL-5.5版本之前默认的存储引擎是 MySIAM,插入的速度和查询速度很快,但是不支持事务。这个版本已经极少使用了。INNODB :MySQL-5.5版本之后默认开始使用INNODB引擎,事务型速记存储引擎,支持ACID,支持行级锁定。

2024-08-18 16:34:06 775

原创 MySQL索引与事务

1.1 事务的介绍事务是一个机制,一个操作序列,直白点说就是一组或一条数据库的操作命令(SQL语句)。把所有的命令作为一个整体向系统提交或者撤销的操作,要么都成功,要么都失败(回滚到提交前的状态)。事务是一个不可分割的工作逻辑单元,在数据库上执行并发操作时,事务是最小的控制单元。数据库通过事务的控制和事务的整体性保持数据的一致性。

2024-08-18 16:14:25 521

原创 MySQL源码安装与MySQL基础学习

​ 本次安装使用的是绿色硬盘版本,无需额外安装依赖环境,比较简单。:条件的筛选,可以跟多个条件,可用and或or连接,:表示0个或多个字符。:修改表名和修改表结构。

2024-08-15 00:28:30 377

原创 keeplive配置详解与haproxy配置详解

一、keepalive相关知识1.1 keepalive介绍keepalive即LVS集群当中的高可用架构,只是针对调度器的高可用。是高可用的HA架构。keepalive就是基于VRRP协议来实现LVS高可用的方案。1、组播地址224.0.0.18,根据组播地址进行通信,主备之间发送报文,确定对方是否存活。2、根据优先级判定主和备的位置。3、故障切换,主挂了,备来接替工作;主恢复了,备继续等待。4、主备之间的切换是VIP地址的切换。1.2 主、备 调度器。

2024-08-05 23:32:49 1041

原创 LVS集群之DR模式

一、DR模式DR模式:直接路由模式1.1 DR模式的工作方式调度器在整个LVS集群当中是最重要的。在NAT模式下,调度器负责接受请求,同时根据负载均衡的算法转发流量,响应给客户端。DR模式下,调度器依然负责接受请求,同时根据负载均衡的算法转发流量,区别在于响应直接由RS响应给客户端。直接路由Direct Routing ,是一种二层转发模式,二层转发的是数据帧,根据MAC地址和目的MAC地址进行转发。不会修改数据包的源IP和目的IP,根据数据包的MAC地址进行转发。

2024-07-17 12:28:54 642

原创 LVS集群之NAT模式

好处在于,对于客户端来说,请求的目的地址始终不变,客户端的配置不需要做特殊修改,只是调度器在对IP地址和端口进行转换,后端的服务器也不需要更改任何配置。在NAT模式下,LVS会将来自客户端的请求报文中的目的IP地址和端口,修改为LVS内部的IP地址和端口,然后把请求转发到后端服务器。响应结果返回客户端的过程中,响应报文也要经过LVS的处理,把它的目的IP地址和端口修改成客户端的IP地址和端口。NAT模式只能有一个调度器,调度器故障,整个集群就不能正常工作。NAT模式是常用的LVS模式之一。

2024-07-17 12:21:26 297

原创 LVS 集群

HA :high availability ,高可用,在设计系统时,采取一定的措施,确保即使系统当中某一组件或者部分出现故障,整个系统依然能正常运行。DS :Director Server ,LVS集群中的主服务器,也就是调度器,类似Nginx的代理服务器,调度器是集群的核心,用来接收客户端的请求转发到后端服务器。RS :Real Server ,LVS集群中的真实服务器,也可以理解为后端服务器,用来接收DS转发过来的请求,并响应结果。RS响应的模式有两种,一是RS响应发送到DS,DS再转发给CIP;

2024-07-17 12:12:37 453

原创 Tomcat服务之优化详解

net.core.rmem_default, net.core.wmem_default, net.core.rmem_max, net.core.wmem_max: 设置内核套接字接收和。net.ipv4.conf.default.rp_filter 和 net.ipv4.conf.all.rp_filter: 控制反向路径过滤,提高网络安全性。net.ipv6.conf.all.disable_ipv6 和 net.ipv6.conf.default.disable_ipv6: 禁用IPv6。

2024-07-17 11:57:28 685

原创 Tomcat服务详解之简介与安装

connector :负责对外接收和响应请求,是Tomcat与客户端沟通的一个枢纽,监听端口来接收外界请求。jsp容器 :Java server page ,这是一种动态页面的技术,可以在html 的页面里面嵌入Java代码。servlet容器 :执行java servlet ,服务端的Java程序,处理客户端的http请求,以及响应。Tomcat自身的优化,系统的内核优化,jvm优化。bin :存放启动和关闭Tomcat脚本的文件。Tomcat使用Java代码写的程序,运行的是Java的web应用程序。

2024-07-17 11:47:46 956

原创 Nginx服务之正向代理和反向代理

一、Nginx的正向代理代理:客户端不再是直接访问服务器,通过代理服务器访问服务端。正向代理以及缓存配置正向代理:面向客户端,我们通过代理服务器的IP地址,访问目标服务端。服务端只知道代理服务器的地址,真正的客户端IP可以隐藏(实际也未必能隐藏)。科学上网就是典型的正向代理。可以在location模块中配置代理地址配置正向代理的示例:通过这样传参的方式使用代理服务二、Nginx的反向代理正向代理我们知道代理服务器的地址,也知道我们访问的web服务器。

2024-07-17 10:56:28 697

原创 Nginx服务之重定向

一、location匹配的分类和优先级location匹配的就是后面的URI1.1 匹配的类型1、精确匹配对字符串进行完全匹配,必须完全符合2、正则匹配location ~ 匹配条件 {}^~ :前缀匹配,以什么为开头~ :区分大小写的匹配~* :不区分大小写!~ :区分大小写的取反!~* :不区分大小写的取反3、一般匹配location /字符串 {}整体上的优先级是精确匹配 > 正则匹配 > 一般匹配1.2 匹配的优先级​ 优先级总结:从高到低。

2024-07-17 08:54:42 742

原创 Nginx服务之配置优化学习交流

所以对有需要的场景,需要在断开连接后,尽快结束TIME_WAIT状态,回收系统资源。注意:不是立即把TIME_WAIT的连接收回,而是尽可能地把TIME_WAIT的状态进行回收:把没用的、空闲的进行回收。客户端发送一个完整的请求头的超时时间,10秒之内没有发送一个完整的请求头,Nginx返回408:request timeout。2. 允许复用TIME_WAIT状态的连接,新的连接可以直接使用TIME_WAIT状态的端口。3. 可选项,老版本的配置,时间戳戳记也可以进行连接复用,基本不用了。

2024-07-14 20:20:01 359

原创 Nginx服务详解(第二部分:Nginx的主配置文件)

一、web服务器一般提到web服务器,就是指httpd或Nginx服务。httpd就是Apache,在国内用的较少。Nginx在国内使用的比较广泛。1.1 NginxNginx是开源的,是一款高性能,轻量级的web服务软件。Nginx稳定性高,而且版本迭代比较快。目前主流的是22、24版本。修复bug比较快,安全性好。Nginx消耗系统资源很低。http的请求并发连接,单台服务器可以支持30000-50000个并发请求(系统资源全部分配给Nginx使用的情况下)。

2024-07-13 10:09:24 1329

原创 Nginx服务详解(第一部分:编译安装)

​ html :工作目录:50x.html默认的访问操作打开的页面,index.html。5 .修改nginx的配置文件,把pid文件的位置指向到设置的位置。源码安装,需要提前准备源码安装的rpm安装包。2. /usr/local/nginx目录下的四个目录的解释。2.开始配置,配置程序的安装路径,安装基于程序需要的安装组件。修改 nginx.conf 文件的内容中 pid 指向的位置。第三步:创建Nginx程序运行需要的用户和组。第二步:安装编译过程中需要的依赖环境。

2024-07-13 09:25:24 184

原创 web基础与http协议

集群:集群建立在分布式的基础之上,把多台计算机或者服务器连接在一起,作为一个整体,形成一个单一的计算资源。HTTP 1.1 只要建立了连接,除非数据发送完毕,否则不需要为了其他的资源专门再建立额外的连接,大大节省了带宽的使用。缓存有的保存在本地,有的保存在web服务器,现在的缓存基本上保存在用户的本机(一般由浏览器保存)。网站建设的基础,早期的网站都是静态页面,没有后台数据库,没有其他的程序,也没有可以交互的页面。一般来说,我们访问的页面,都是以.html或者.htm结尾,也是网站的首页。

2024-07-12 14:34:36 603

原创 Linux安全技术与防火墙

一、安全技术和防火墙1.1 安全技术入侵检测系统:特点是不阻断网络访问,主要是提供报警和时候报警,不主动介入。入侵防御系统:透明模式工作,对数据包、网络监控、服务攻击、木马蠕虫、系统漏洞等等进行准确的分析和判断。在判定为攻击行为后会立即阻断,主动防御。所有数据在进入本机之前,必须要通过的设备或软件。防火墙:核心功能:隔离,工作在网络或者主机的边缘,一般在Internet和内网之间。对网络或者主机的数据包基于一定的规则进行检查,根据匹配到的规则放行或拒绝(丢弃数据包)。只开放允许访问的策略。

2024-07-12 10:44:51 1119

原创 shell脚本之免交互

一、免交互1.1 简单解释免交互交互:在计算机中,交互一般指发出指令控制程序的运行,程序在接收到指令之后按照指令的效果做出对应的反应。免交互:间接地通过第三方的方式把指令传送给程序,不用直接地下达指令。一般通过脚本。Here Document 免交互这是命令行格式,也可以写在脚本当中。通过I/O重定向的方式将命令的列表传送给交互式程序或命令。是标准输入的一种替代品,代替了人工的输入方式。语法格式如下图:EOF。

2024-07-12 10:34:17 442

原创 Linux文本三剑客之awk

例3:监控内存,cpu和硬盘的根目录,超过80%提示用户,写成函数库的行,每天早上 的8:50分,执行一次脚本。RS :行分隔符,可以根据RS的设置把文件内容分割成多个记录,也可以改变行的分隔符,默认是\n,回车,换行。:相当于if [ $3 > $4 ],后面的内容就是为真的时候输出的内容,这里是输出$3。第一个: :相当于else,后面的内容就是判断为假的时候输出的内容,这里是输出$4。NF :处理行的字段字数,特殊的,$NF表示当前行的最后一个字段。$# :#是数字,表示按行需要取出的第几个字段。

2024-07-11 22:51:12 909

原创 Linux文本三剑客之sed

文本三剑客sed是一种流编辑器,按行处理,一次处理一行内容。操作结果如果只是展示,会放在缓冲区(模式空间),展示结束之后,会从模式空间把操作结果删除。处理文本时按行处理,处理完当前行,才会处理下一行,直到文件末尾。

2024-07-11 22:33:41 838

原创 shell数组学习与交流

数组名=(要定义的元素值,用空格隔开,两边的元素要顶格写)数组名不能重复。定义数组的方式1:test2[ ]的[ ]中是对应元素的下标,即元素在数组中的位置,下标从0开始。

2024-07-11 22:23:40 324

原创 shell函数学习与交流

将命令序列按照格式写在一起。格式指的是函数的固定格式,有两种。作用:方便重复使用。函数库将函数集中在一起,随时可以传参调用。可以把大的工程分割成若干个小的功能模块,提高代码的可读性。

2024-07-10 23:44:43 327

原创 shell脚本之for循环

对于多层循环,在内层循环使用break、continue只是跳出当前层的循环,如果想要跳出多层循环,可以在break、continue后加上跳出的层数,比如要跳出双循环可用break 2 ,continue 2。逛淘宝选购商品,每家商店有五种商品选购(衣服500元,裤子400元,鞋子350元,帽子150元,袜子50元),每次选购完或不买都会提示用户是否继续逛下一家商店,如果不再继续逛的话进行购物车结算总额。循环:条件不满足才执行循环,一旦条件成立,循环终止。适用场景:死循环,不知道循环多少次,需要主动。

2024-07-10 23:21:23 457

原创 shell脚本之for循环

例:猜数字,输入一个1-100的随机数,这个随机数由系统生成,每次猜提示猜大了还是猜小了,猜中则提示猜中了,并统计一共猜了多少次。在循环内部,当执行到continue,跳出当前循环,如果后续条件依然满足,会继续进行。循环是一种重复执行一段代码的结构,只要满足循环的条件,会一直执行这个代码。循环体:在循环中执行的命令序列,只要条件满足,循环体会被一直执行。在循环内部,执行到break命令时,会立即跳出当前循环,并终止。重复执行代码,尤其是统一的,相同的,批量的操作。简化程序的逻辑,降低代码出错的可能性。

2024-07-10 15:30:38 416

原创 shell脚本之if/case语句

一、条件测试1、1 返回码 $?:返回码,用来判断命令或者脚本是否执行成功。0 :表示true ,成功;非0 则表示flase ,失败。1、2 test命令可以进行条件测试,然后根据返回值来判断条件是否成立-e:exist,测试目录或者目录是否存在-d:directory,测试目录是否存在-f:file,测试普通文件是否存在-r:read,测试当前用户是否对文件/目录有读权限-w:write,测试写权限-x:execution,测试执行权限1、3 比较符1.3.1 整数比较-eq。

2024-07-10 15:22:18 946

原创 shell脚本和变量

标准输入:标准输入通常表示程序接受输入数据的来源,当程序需要从用户或另一个程序获取输入时,它会从标准输入读取数据,在大多数情况下,标准输入是通过键盘输入的。sh / bash :就是在当前的shell环境下生成一个子shell,在子shell的环境下运行,运行结果不改变父shell的环境,相当于演示。标准输出:标准输出是程序通常向其发送信息的位置,当程序产生输出时,它将输出写入到标准输出中,这些输出通常被显示在终端上。脚本就是可以运行的代码的集合,脚本语言(计算机语言)的特点是:从上到下,按行执行。

2024-06-26 17:32:17 651

原创 PXE自动装机

TFTP地址:简单文件传输协议,适合传输小文件,引导镜像文件很小,使用TFTP。PXE:C/S架构,允许客户端通过网络从远程服务器下载引导镜像,加载安装文件,实现自动化安装操作系统。C/S架构,服务端和客户端可以是多台,无人值守即安装选项不需要人为干预,可以自动化实现。通过光盘镜像把光盘目录下 /images/pxeboot/ 目录下的文件vmlinuz,initrd.mrg复制到目录 /var/lib/tftpboot/下。管理TFTP的文件传输,TFTP是一个后台进程,使用的是UDP协议,端口是69。

2024-06-13 17:31:50 294

原创 SSH远程管理

i:指定要复制的公钥文件,默认情况下它会查找 ~/.ssh/id_rsa.pub 或 ~/.ssh/id_dsa.pub 文件。公钥上传到主机可用scp等远程复制,传输工具,上传后复制公钥到默认的ssh密钥保存目录 /root/.ssh,接下来配置。openssh管理是一种安全通道协议,用来实现字符界面的远程的登录、远程复制、远程文本传输。总的来说,密钥对的作用是确保数据的保密性、完整性和真实性,以及建立安全的通信渠道。-p :ssh默认端口是22,当服务端口被更改时,使用 -p指定ssh访问的端口。

2024-06-11 19:05:17 564

原创 NFS共享存储服务

1、首先,对test1,test2,test3都关闭防火墙,关闭安全机制,都安装rpcbind,nfs-utils软件。20.0.0.0/24 :声明网段,该网段的主机都可以访问本机的共享目录。注释:挂载源:20.0.0.10:/opt/share,20.0.0.10主机的共享目录 /opt/share。以test2为服务端的主机,共享目录为 /opt/share2,只共享对test3开放,对test1不开放。2、nfs:共享服务,端口号:2049(隐藏端口)/opt/share :声明本机的共享目录。

2024-06-09 18:28:21 294

原创 yum进阶--配置yum源

yum的主要作用解决依赖关系自动安装自动升级。

2024-06-09 17:34:30 382

原创 LINUX系统Bond网卡学习与交流

一、Bond网卡Bond网卡1.1 Bond网卡概述Bond网卡是指使用 Linux 系统中的 Bonding 技术创建的虚拟网络接口。Bonding 技术允许将多个物理网卡(也称为接口或端口)绑定在一起,形成一个虚拟的网络接口,以增加网络带宽、提高网络容错性和负载均衡能力。在 Linux 中,可以使用工具如 ifenslave、ifconfig、ip 等来配置和管理 Bonding 接口。1.2 Linux网卡的绑定模式。

2024-06-09 17:07:24 302

原创 LINUX网络FTP服务

特别注意:在/etc/vsftpd/ftpusers里记录的用户,即使在白名单上也不能登录,这个文件相当于白名单里的黑名单。用户列表文件 :/etc/vsftpd/userlist ,控制用户访问,修改文件,添加黑名单,不用重启,立刻生效。重启服务即可,系统用户登录时,把用户禁锢在家目录,系统用户只能在自己的家目录操作,包括root用户。在实际生产过程中,由于匿名用户权限过高,可靠性低,存在安全隐患,所以都会禁止匿名用户登录。匿名用户的默认根目录是 /var/ftp/pub,对该目录赋权777。

2024-06-09 11:21:15 582

原创 LINUX网络DHCP配置

4、确认(Acknowledge):DHCP 服务器收到设备发送的 Request 消息后,将选定的IP地址标记为“已用”,设定租期,并向设备发送一个 DHCP Acknowledgement(ACK)消息,确认分配给设备的 IP 地址和其他网络配置信息。客户端发送一个renew request,服务端收到请求,从地址池当中获取一个IP,标记为已用,设置租约,发送ACK消息,客户端获取并使用IP地址。DHCP 租约通常是有限期的,在租约到期之前,设备可以选择续约租约,以保持网络连接。

2024-06-08 23:26:52 626

原创 LINUX网络配置

1.修改配置文件 :vim /etc/hosts ,修改第一行为新主机名,保存退出,然后重启系统可以刷新新主机名。ifconfig ens33 :0 20.0.0.100:基于物理网卡建立一个虚拟网卡,重启虚拟机或者重启网卡,该虚拟网卡都会消失。State:状态:LISTEN:监听;nslookup IP地址:解析IP地址对应的域名,反向解析,根据IP地址解析域名。设备名:查看指定网卡设备,设备名 up/down:对指定网卡设备进行开关。proto:protocol,协议:tcp:IPV4;

2024-06-08 22:36:13 620

原创 Linux文件系统和日志分析

文件是存储在硬盘上的,硬盘上的最小存储单位是扇区,大小512字节,block,即块,连续的8个扇区组成一个块,一个块的大小是4k,块是文件的最小存储单位,即创建一个文件,最小也要占4K空间,操作系统读取硬盘,是一次性读取多个扇区,一个块一个块地读取。/var/log/secure /var/log/lastlog /var/log/wtmp /var/log/btmp:用户登录日志。mail.=info /var/log/mail.log .= :只记录mail的info级别的日志。mail.info;

2024-06-07 16:49:43 646

原创 Linux系统安全及应用

su 用户名 :在终端中切换已知密码的用户,root用户切换到普通用户默认不需要密码,普通用户发起的切换需要目标账户的密码,su切换用户不会改变环境变量,用的还是之前的用户shell,是不完全切换。su -用户名:登录式切换,读取目标用户的配置文件,切换到家目录,如果在root用户下,su 相当于刷新,如果是普通用户,就是切换回root。5.1 sudo命令 ,相当于给普通用户赋权,配置sudo需要对/etc/sudoers/进行编辑,进入配置,注释掉图中两行。

2024-06-07 14:35:31 1301 1

原创 RAID磁盘阵列

RAID:Redundant Arrays of Independent Disks,独立磁盘冗余阵列。RAID可以用 不同的硬盘分区,组成一个逻辑上的硬盘。和LVM不同的是,RAID可以实现冗余功能,也即所谓的“高可用”。

2024-06-02 18:23:01 959

原创 LVM和配额管理

LVM是逻辑上的磁盘,概念上的磁盘,文件系统创建之后不再考虑底层的物理磁盘。LVM把若干个磁盘分区或者物理硬盘,合并成一个逻辑卷组,再把这些逻辑卷组划分成一个个逻辑卷。逻辑卷是把卷组分为多个硬盘,不再考虑底层的物理硬盘,可以实现多个硬盘的汇聚以及动态扩容。LV:logical volume,逻辑卷,把卷组进行分区,相当于物理硬盘的分区,逻辑卷可以动态扩容。VG:volume group,卷组,物理上的分区结合起来,就形成了卷组,卷组就是逻辑上的硬盘。xfs文件系统是通过xfs_quota进行管理的,

2024-06-01 21:53:50 288

原创 Linux系统硬盘分区

gdisk命令用于大建立GPT分区,对大于2T的硬盘进行分区,gdisk的交互选项和fdisk几乎一样,交互步骤也基本一致,特别的是,gdisk需要声明分区的类型的ID,键入L可以查看分区类型表。1.3.2 GPT分区:GPT分区表比MBR分区更先进,GP有128位的位置分区标识符来标识分区,可分128个区,不必再细分主分区,扩展分区,逻辑分区,所有分区都是主分区。因为扩展分区只保存逻辑分区的数据信息,实际占用的空间很小,但逻辑分区是建立在扩展分区上的,扩展分区的大小决定了逻辑分区的大小。

2024-06-01 16:52:01 1560

空空如也

空空如也

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

TA关注的人

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