- 博客(117)
- 收藏
- 关注
原创 ospf协议
每台路由器基于LSDB,使用SPF(最短路径优先)算法进行计算,每台路由器都计算出一颗以自己为根、无环的、拥有最短路径的树,有了这个树,路由器就已经知道了到达网络各个角落的优选路径;ospf使用cost(开销)作为路由的度量值。ospf网络类型是一个非常重要的接口变量,这个变量将影响ospf在接口上的操作,例如采用什么方式发送ospf协议报文,以及是否需要选举dr、ndr等。为优化网络中ospf邻接关系,ospf指定了三种ospf路由器身份,dr(指定路由器)、bdr(备用路由器)和drother路由器。
2025-03-01 00:13:40
631
原创 网络工程知识笔记
背景:ip地址唯一标识了网络中的一个节点,每个IP地址都拥有自己的网段,各个网段可能分布在网络的不同区域,为了实现IP寻址,分布在不同区域的网段之间要能相互通信就有了路由;直连路由:指向本地直连网络的路由,由设备自动生成,当路由器为路由转发的最后一跳路由器时,IP报文匹配直连路由,路由器转发IP报文到目的主机;子网掩码是一种用于区分 IP 地址中网络部分和主机部分的 32 位数字。NAT(网络地址转换)是一种将私有 IP 地址转换为公共 IP 地址的技术,主要用于节省公共 IP 地址资源和提高网络安全。
2025-02-22 19:22:08
899
原创 读写分离/双主双从
读写分离就是把数据库的读和写分开,以对应不同的数据库服务器,主数据库提供写操作,从数据库提供读操作,这样能有效地缓解单平台数据库的压力;通过mycat即可轻易实现上述功能,不仅可以支持MySQL,也可以支持哦Oracle和SQL server;主要是要开启balance读写分离机制。3.搭建两个主库之间的复制账号。俩个库都需要创建用户。
2025-02-21 17:11:52
153
原创 Mycat中间件
Mycat是采用java语言开发的开源数据库中间件,支持windows和linux运行环境,下面介绍Mycat和Linux中的环境搭建。Mycat是开源的,活跃的、基于java语言编写的MySQL数据库中间件。可以像使用MySQL一样使用mycat,对于开发人员来说根本感觉不到mycat的存在;使用vim命令修改/etc/profile文件,在文件末尾加入如下配置。进入/usr/local/mycat/lib。(3)删掉mysql5版本的驱动包。(2) 解压MyCat的压缩包。(1)上传mycat安装包。
2025-02-17 00:45:45
462
原创 MySQL的分库分表
分库分表的中心思想就是将数据分散存储,使得单一数据库/表的数据量变小来缓解单一数据库的性能问题,从而达到提升数据库性能的目的;1.IO瓶颈:热点数据太多,数据库缓存不足,产生大量磁盘IO,效率降低,请求数据太多,带宽不够,网络IO瓶颈;每个库的数据也不一样;(1)水平分库:以字段为依据,按照一定策略,将一个库的数据拆分到多个库中;特点:每个库的表结构都一样,每个库的数据都不一样;(2)水平分表:以字段为依据,按照一定策略,将一个表的数据拆分到多个表中;特点:每个库的表结构都一样,每个库的数据都不一样;
2025-02-16 23:42:23
306
原创 Linux安装MySQL
2.在Linux创建Linuxmysql文件夹,并解压。3.切换到linuxmysql目录按顺序解压。1.下载MySQL安装包。大C是安装到指定目录。
2025-02-16 15:18:59
173
原创 MySQL的日志/主从复制
二进制日志(binlog)记录了所有的DDL(数据定义语言)语句喝DML(数据操纵语言)语句,但不包括数据查询(select、show)语句。对于比较繁忙的业务系统,每天生成的binlog数据巨大,如果长时间不清楚,将会占用大量的磁盘空间,可以通过以下几种方式清理日志;purge master logs to 'binlog.*******':删除******编号之前的所有日志;statement:基于SQL语句的日志记录,记录的是SQL语句,对数据进行修改的SQL都会记录在日志文件中;
2025-02-14 18:15:47
435
原创 MYSQL的管理备份
performance_schema:为MySQL服务器运行时状态提供了一个底层监控功能,主要用于收集数据库服务器性能参数;sys:包含了一系列方便DBA和开发人员利用performance_schema性能数据库进行性能调优和诊断的视图;information_schema:提供了访问数据库元数据的各种表和视图,包含数据库、表、字段类型及访问权限等;mysql:存储MySQL服务器正常运行所需的各种信息(时区、主从、用户、权限等);
2025-02-13 17:45:20
306
原创 MySQL的innoDB引擎
buffer pool:缓冲池是主内存中的一个区域,里面可以缓存磁盘上经常操作的真实数据,在执行增删改查操作时,先操作缓冲池中的数据(若缓冲池没有数据,则从磁盘加载并缓存),然后再以一定的频率刷新到磁盘,从而减少磁盘io,加快处理速度。页:是innodb存储引擎磁盘管理的最小单元,每个页的大小默认为16kb,为了保证页的连续性,innodb存储引擎每次从磁盘申请4-5个区;区:表空间的单元结构,每个区的大小都为1M,默认情况下,innoDB存储引擎页大小为16k,即一个区中一共有64个连续页;
2025-02-12 02:01:39
150
原创 MySQL的锁
锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,除传统的计算机资源(cpu、ram、I/O)的争用以外,数据也是一种供许多用户共享的资源,任何保证数据库并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也是更加复杂。(3)行级锁:每次操作锁住对应的行数据;(1)全局锁:锁定数据库中所有表;(2)表级锁:每次操作锁住整张表;
2025-02-11 14:28:44
233
原创 视图/存储过程/存储函数/触发器
当使用with check option子句创建视图时,MySQL会通过视图检查正在更改的每个行,例如插入,更新,删除,以使其符合视图的定义,MySQL允许基于另一个视图创建视图,它还会检查依赖视图中的规则以保持一致性,为了确定检查的范围,MySQL提供了两个选项:cascaded和local,默认值为cascaded。查询指定数据库的存储过程及状态信息。视图(view)是一种虚拟存在的表,视图中的数据并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。
2025-02-07 01:40:26
784
原创 SQL优化
using filesort:通过表的索引或全表扫描,读取满足条件的数据行,然后在排序缓冲区sort buffer中完成排序操作,所有不是通过索引直接返回排序结果的排序都叫filesort排序;(2)页分裂:页可以为空,也可以填充一半,也可以填充100%,每个页包含了2-N行数据(如果一行数据多大,会行溢出),根据主键排序。(1)数据组织方式:在innodb存储引擎中,表数据都是根据主键顺序组织存放的,这种存储方式的表称为索引组织表(IOT);主键顺序插入:1,2,3,4,6,8,43,77。
2025-02-03 21:01:09
350
原创 MySQL的索引
MySQL索引数据库结构对经典的B+Tree进行了优化,在原B+Tree的基础上,增加一个指向相邻子叶节点的链表指针,就形成了带有顺序指针的B+Tree,提高区间访问的性能。2.对于B+Tree,无论叶子节点还是非叶子节点,都会保存数据,这样导致一页中存储的键值减少,指针跟着减少,要同样保存大量数据,只能增加树的高度,导致性能降低;缺点:索引也是要占用空间的,索引大大提高了查询效率,同时也降低更新表的速度,如对表进行insert,update,delete,效率降低。(树的度数指的是一个节点的子节点个数)
2025-01-16 18:09:30
918
原创 Linux大数据方向shell
第三种:在脚本的路径前加上. 或者source可以使脚本内容在当前shell里执行,而无需打开子shell,此时打印变量a是有值的,继承了,这就是为什么每次改完profile文件后都要source,而其他的当脚本内容解释,子shell关闭回到父shell中,不会继承,此时打印变量a是没有值的,一般用source的机会比较小。:最后一次执行的命令返回状态,如果这个变量的值为0,证明上一个命令正确执行,如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确。
2024-12-24 17:58:40
209
原创 Linux的Java方向
RPM:Redhat软件包管理工具,类似windows里面的setup.exed,是Linux这系列操作系统里面的打包按照工具,它虽然是Redhat的标志,但理念是通用的。YUM:是一个在fedora和Redhat以及centos中的shell前端软件包管理器,基于rpm包管理器,能够从指定的服务器自动下载rpm包并且安装。经验技巧:软件包过多一般会采用过滤 rpm -qa | grep rpm 软件包。rpm -qa:查询所安装的所有rpm软件包。rmp -e --nodeps软件包。
2024-12-24 15:09:07
241
原创 Linux权限处理案例
所有者为java部门的领导wang,所属组为java2部门,张总有全部的权限,部门其他开发有读和执行的权限,其他人只有读的权限。去opt里创建java文件夹,cd /opt sudo mkdir java2。注意:chowm wang:java2,可以一次性修改为所有者wang,所属组java2部门。修改所属组为java2部门,sudo chgrp java2 java2。创建组java2,sudo groupadd java2。修改权限 sudo chmod 754 java2。
2024-12-23 13:31:32
201
原创 Linux命令
systemctl list-unit-files 服务名:查看所有服务自启配置。systemctl --type service 服务名:查看正在运行的服务。systemctl is-enabled 服务名:查看服务是否自启。-a:全部的文件,连同隐藏档(开头为.的文件)一起列出来(常用)systemctl restart 服务名:重启服务。sysremctl status 服务名:查看服务。systemctl start 服务名:开启服务。sysremctl stop 服务名:关闭服务。
2024-12-18 17:54:33
365
原创 Linux介绍
三、具有字符界面和图形界面,可以通过指令来进行操作、同时提供了类似window图形界面,用户可以使用鼠标对其进行操作。四、支持多用户,各个用户对自己的文件设备有自己特殊的权利,保证各用户之间相互不影响,可以使多个程序同时独立运行。一、Linux系统里所有的都归结为一个文件,每个文件都有确定的用途。五、可以运行在多种硬件平台上。
2024-12-13 17:52:35
119
原创 网络常见命令
clock timezone(时区){add|minus}(偏移时间)[正向偏移add;ospf 2 router-id 1.1.1.1(2是进程值,1.1.1.1是router的标识)network 192.168.1.0(ip的网段) 0.0.0.255(网段掩码的反写)二、查看路由表(查看192.168.3.1)三、宣告(宣告完后两个网段就可以相互看见)area 0(放进区域0)从用户视图切换到系统视图。从系统视图切换到用户视图。配置完成退回视图界面命令。接口IP信息查看命令。路由当前配置查看命令。
2024-11-25 17:32:59
1201
原创 网络远程操控
配好ip后进入AR1ping一下AR2的ip看看通不通,接着进入AR2开启telnet权限。输入system-view进入视图,不敲这个命令不能进行配置。最后进入AR1使用2telnet管理AR2。2.开启远程管理功能,打开telnet。3.创建远程管理的账号和密码,账号权限。1.给两个设备配上ip地址让他们能通。
2024-11-12 23:14:06
252
原创 MySQL的存储引擎
xxx.idb:xxx代表的是表名,使用该引擎的每张表都会生成一个这样的表空间文件,存储该表的结构(fem,sdi),数据和索引。存储引擎就是存储数据,建立索引,更新/查询数据等技术的实现方式,存储引擎是基于表的,索引存储引擎也被称为表类型.这是一种兼顾高可靠性和高性能的通用存储引擎,在mysql5.5之后,为MySQL的默认引擎。表数据存储在内存中,由于受到硬件问题,或断电问题的影响,只能将这些表作为临时表,或缓存使用。主要将数据存储在文件系统上,并完成与存储引擎的交互。1.在创建表的时候指定存储引擎。
2024-08-14 23:59:16
377
原创 java数组
例如:int类型的数组容器可以存储byte,short,int等,不能存储boolean。* 完整格式:数据类型[]数组名=new数据类型[]{}元素1,元素2,元素3...};* 数组遍历:将数组中所有的内容取出来,取出来之后可以(打印,求和,判断...)* 初始化:就是再内存中,为数组容器开辟空间,并将数据存入容器中的过程。* 静态初始化:手动指定数组元素,系统会根据元素个数,计算出数组的长度。* 注意:遍历指的是取出数据的过程,不要局限的理解为,遍历就是打印。
2024-04-30 00:40:22
406
原创 【无标题】
1.表达式:(将要匹配的值)取值为byte,short,int,char,JD5以后可以是枚举,JD7以后可以是String.* 如果没有发现break,那么程序会继续执行下一个case的语句体,直到break或者有大括号为止。和if语句的else相似。* 如果匹配上了,就会执行对应的语句体,如果此时发现了break,那么结束整个switch语句。* default -> {System.out.println("没有这个选项");* 上面这个格式里面,只有r是变量名,可以变,其他的都不允许变。
2024-04-29 00:51:31
374
1
原创 Bootstrap组件
- bootstrap是前UI框架,提供大量编写好的CSS样式允许开发者结合一定HTML结构。下载:导航/Extend:图标库,安装,下载安装包bootstrap-icons-1。栅格化是指将整个网页的宽度分成12等份,每个盒子占用的对应的份数。-- bootstrap 组件(components)col-*-*:列(例如:col-xxl-3)-- bootstrap 栅格系统。-- bootstrap 全局样式。-- bootstrap 字体图标。按钮尺寸:btn-lg/btn-sm。
2024-03-12 16:00:48
463
原创 CSS进阶空间转换和 less
空间:是从坐标轴角度定义的X,Y,和Z三条坐标轴构成一个立体空间 Z轴位置与视线方向相同。rotate3d(x,y,z):用来自定义旋转轴的位置及旋转的角度。作用:指定了观察者与Z=0平面的距离,为元素添加透视效果。-- 立体呈现 transform-style。属性名:transform-style(给父级加)作用:设置元素的子元素是位于3D空间中还是平面中。属性:(添加给父级,取值范围800-1200)preserve-3d:子级处于3D空间。x,y,z取值为0-1之间的数字。
2024-03-12 15:57:57
518
原创 CSS进阶平面转换
单独设置X或Y轴移动距离:translateX()或translateY ()属性:transform:translate(X轴移动距离,Y轴移动距离);transform:scale (x轴缩放倍数,Y轴缩放倍数);注意:旋转会改变坐标轴向,多重转换会以第一种转换形态的坐标轴为准。技巧:通常,只为scale(设置一个值,表示X轴和Y轴等比例缩放。概念:改变盒子在平面内的形态(位移,旋转,缩放,倾斜)属性:transform:rotate(旋转角度);transform:scale(缩放倍数);
2024-02-20 16:45:35
564
原创 CSS的定位position,字体图标,修饰
把网页中一些背景图片整合到一张图片文件中,再background-position精确定位出背景图片的位置。2.参照物:先找最近的已经定位的祖先元素,如果所有祖先元素都没有定位,参照浏览器可视区域改位置。登录,素材库,官方图标库,进入图标库,选图标,加入购物车,添加至项目,确定,下载至本地。优点:减少服务器被请求次数,减轻服务器的压力,提高页面加载速度。z-index取值是整数,默认是0,取值越大显示顺序越靠上。作用:设置定位元素的层级顺序,改变定位元素的显示顺序。
2024-02-19 17:00:59
605
原创 CSS的flex弹性布局
空白间距均分在弹性盒子之间 */space-between:弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子之间。space-between:弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子之间。space-around:弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子两侧。space-evenly:弹性盒子沿主轴均匀排列,弹性盒子与容器之间间距相等。space-around:弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子两侧。space-evenly:弹性盒子沿主轴均匀排列,弹性盒子与容器之间间距相等。
2024-01-29 23:16:02
592
原创 CSS的浮动(float)布局效果
原理:有问题的原因是父级无法被子级撑开高度范围,overflow:hidden会检查父级的范围,这样高度就检查到了。1.额外标签法:在父级元素内容的最后添加一个块级元素,设置css属性clear:both(清除两侧浮动的影响)标准流也叫文档流,指的是标签在页面默认的排布规则,例如:块级元素独占一行,行内元素可以一行显示多个。场景:浮动元素会脱标,如果父级没有高度,子级无法撑开父级高度(可能会导致页面布局混乱)注意:加了浮动属性的盒子,会脱标(不会占有标准流的位置)解决方法:清除浮动(清除浮动带来的影响)
2024-01-22 17:25:42
565
原创 css新闻列表案例(li标签和a标签各自控制一个背景图片)
G9“带货”背后:亏损面持续扩大,竞争环境激烈“中国天眼”又有新发现 已在《自然》杂志发表
2024-01-18 11:16:41
645
原创 CSS的盒子模型
* 内减模式:不需要手动减法也能让盒子大小为设置大小(300*300),加padding和border不会撑大盒子 *//* 内减模式:不需要手动减法也能让盒子大小为设置大小(300*300),加padding和border不会撑大盒子 */padding: 10px(上) 20px(右)30px(下)40px(左)注意:x轴偏移量和y轴偏移量必须书写,默认是外阴影,内阴影需要添加inset。/* 滚动条 (无论是否溢出,都显示滚动条位置) *//* 滚动条 (溢出才显示滚动条位置) */
2024-01-18 09:43:16
767
原创 CSS背景属性和显示模式
属性值:背景色 背景图 背景图平铺方式 背景图位置/背景图缩放 背景图固定(空格隔开各个属性值,不区分顺序)contain:等比例缩放背景图片以完全装入背景图,如果图片的宽高和盒子尺寸相等,可能背景图区部分空白。如果写了100% 图片的宽度跟盒子宽度一样,图片的高度按照图片等比例缩放。cover:等比例缩放背景图片以完全覆盖背景区,可能背景图片部分看不见,no-repeat:不平铺,盒子左上角显示一张背景图。行内块:一行共存多个,默认尺寸由内容决定,加宽高生效。属性值:水平方向位置,垂直方向位置关键字。
2024-01-15 12:18:25
472
原创 CSS的特性与简便写法
</span><span></span><span></div>id选择器:标签名#id名:<div id="box"></div>有内容的标签:div{内容}:<div>text</div> -->同级选择器:div+p:<div>
2024-01-04 21:21:28
1028
原创 CSS的进阶
这是在div里面的p里面的(孙子)span</span><span>这是在div里面的p里面的(孙子)span</span><span>这是在div里面的p里面的(孙子)span</span>选择器写法:选择器1,选择器2,...选择器N{CSS},选择器之间用,隔开。选择器写法:父选择器>子代选择器{CSS属性},父选择器之间用 > 隔开。<span>这是在div里面的(儿子)span
2024-01-03 00:55:24
652
原创 Css基础内容
p class="text2">上划线aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa。-- <link rel="stylesheet" href="Html5与Css3\CSS\my.css"> -->-- link引入外部样式表:rel:关系.样式表,敲完link直接按回车就行 -->rgb表示法:rgb(r,g,b):r,g,b表示红绿蓝三原色,取值:0-255。rgba表示法:rgb(r,g,b,a):a表示透明度,取值:0-1。
2023-12-28 17:59:24
817
原创 Html基础与表单案例
男</label><label>确认密码:</label><input type="password" placeholder="请输入确认密码"><label>密码:</label><input type="password" placeholder="请输入密码"><label>姓名:
2023-12-18 17:34:19
424
原创 vue的简单购物车案例
{{ totalPrice }}</span><button @click="del(item.id)">删除</button>
2023-12-14 00:54:33
849
原创 MySQL的事务
事务是一组操作的集合,它是一个不可分隔的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。幻读:一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现该行数据已存在,好像出现了‘幻影’默认MySQL的事务是自动提交的,也就是说,当执行一条DML语句,MySQL会立即隐式的提交事务。不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同,称为不可重复读。注意:事务的隔离级别越高,数据越安全,但是性能越低。回滚事务(结束该事务)
2023-12-05 18:13:04
531
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人