自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Skills:AI 时代必备技能,让大模型从聊天工具变成专业助手

大模型虽聪明却常“差口气”,因其缺乏垂直场景的深度经验。通过Skill——将售后、产品等专家经验封装为可复用的文件夹式能力包,AI可按规则精准执行任务,输出更稳定专业。Skill包含SKILL.md(流程)、references(参考)、script(代码)、assets(资源),支持按需加载,零代码上手,实现“人人可用,岗岗必备”。未来,沉淀经验即赋能AI,让其从泛知走向专精。

2026-09-28 12:00:41 242

原创 mysql 8.0.21 升级 mysql 8.0.45(经过生产环境验证)

MySQL版本升级 生产环境方案

2026-08-26 15:05:54 218

原创 PolarDB-MySQL架构详解

摘要:PolarDB MySQL采用计算与存储分离架构,计算节点仅存元数据,数据文件存储在远端节点。通过读写分离中间件实现自动负载均衡,写请求转发至主节点,读请求根据节点负载分配。支持读一致性保证、自动故障转移和高速RDMA网络互联。共享分布式存储支持在线扩容,数据多副本通过Parallel-Raft协议确保可靠性。转发逻辑细分为可读可写和只读模式,涵盖各类SQL操作场景。(150字)

2026-04-16 10:45:08 370

原创 postgres 二进制安装方案

PostgreSQL二进制安装指南摘要:本文介绍了PostgreSQL 17.2的二进制安装步骤。首先创建postgres用户组和用户,配置环境变量。然后设置系统内核参数,包括共享内存、端口范围等,并关闭防火墙。安装编译依赖包后,下载源码包进行编译安装。主要步骤包括用户创建、系统参数调优、依赖安装和源码编译。该流程适用于Linux系统下的PostgreSQL部署,通过合理配置系统参数可优化数据库性能。

2026-02-27 14:48:41 287

原创 mongodb小版本升级方案

摘要:本文详细介绍了MongoDB从6.0.6升级到6.0.26的完整流程。升级采用分步策略,先升级SECONDARY节点,最后升级主节点。具体步骤包括:检查兼容性、下载新版本安装包、关闭实例、备份数据、替换镜像包、启动实例和验证状态。同时提供了完整的回退方案,包括恢复备份数据和回退版本操作。整个升级过程注重数据安全,每个环节都设置了检查点,确保升级过程可控可靠。

2026-02-27 14:47:14 310

原创 mongodb修改集群内节点权重的方案

摘要:本文介绍MongoDB 6.0三副本集群的权重调整方案。通过修改rs.conf()配置,可调整各节点优先级(priority值越高选举优先级越高),修改后需执行rs.reconfig()使配置生效,此过程会导致业务短暂中断。示例中将成员0权重设为50,成员1和2设为200,调整后可通过rs.config()查看最新权重配置。该操作需按顺序执行,且会影响业务运行。

2026-02-27 14:45:47 229

原创 mongodb数据库业务侧不定时有 Connection pool for ServerId{clusterId 报错

摘要:客户MongoDB报错显示连接池暂停,排查发现实例资源无瓶颈,但存在客户端主动断开连接的情况。通过分析慢日志发现部分SQL超时时间过长,对比两套环境后发现连接串超时参数设置不同。最终通过添加超时参数解决了问题,表明该报错是由连接超时导致的。

2026-02-27 14:42:31 171

原创 mysql登录失败的时候经常会显示主机名的原因

MySQL主从复制连接失败问题分析:备库slave02连接主库时报错,添加skip-name-resolve配置无效。排查发现重新创建实例指定slave02连接可成功,但删除用户后连接失败。最终确定问题根源是密码错误,修改repl@'%'用户密码后连接成功。DNS反向解析slave02的IP导致错误提示混淆,实际为密码认证失败所致。

2026-02-27 14:27:55 206

原创 k8s系统学习

nodeName: node1 定向调度,一种强制调度的模式,指的是利用在pod上声明nodeName或者nodeSelector,Node:工作负载节点,由master分配容器到这些node工作节点上,然后node节点上的docker负责容器的运行。Controller:控制器,通过它来实现对pod的管理,比如启动pod、停止pod、伸缩pod的数量等等。Pod:kubernetes的最小控制单元,容器都是运行在pod中的,一个pod中可以有1个或者多个容器。通过docker来创建、更新、销毁容器。

2025-12-25 16:36:02 542

原创 sql 开发基础版(命令)

创建表之后要建默认字符集。生产环境建议配置文件客户端和服务端都添加+ character-set-server=utf8 #默认创建表为utf8.命令create table #创建表alter table #修改表truncate #清空表desc #查看表列信息#查看建表语句。添加索引修改列属性。alter table test modify sname varchar(200) not null comment'姓名';添加列克隆表结构表明要有规范。

2025-12-25 16:35:39 950

原创 mysql sysbench 压测 生成测试文件方式

模拟测试两次读写并发,第一次100,第二次200,自动生成SQL脚本,测试表包含20个init字段,30个char字段,每次执行2000查询请求。–auto-generate-sql-load-type=mixed 测试的负载模型,包括 mixed, update, write, key,read,默认是 mix。–auto-generate-sql-add-autoincrement 在自动生成的表中添加自增列。–number-char-cols=30 指定测试表中varchar列的数量。

2025-12-25 16:32:28 468

原创 mysql体系结构

connectors 层 客户端程序。接口程序。支持gdbc.php.pythonmysql server层。逻辑层。pluggable storage Engines 存储引擎层。file sys 物理磁盘二、mysql server逻辑层结构新姿势1、connectors 层2、mysql server层。(1)connection management 层。① 也可以叫连接管理器,提供链接协议。socket 文件TCP/IP 方式。

2025-12-25 16:31:08 383

原创 mongo4.0版本以及之前版本搭建主备同步方案

也可以主库写入部分数据测试备库是否同时写入。10.10.180.61 主节点。10.10.180.104 备节点。版本: mongodb2.6.0。一、搭建mongodb 副本集。3、检查是否搭建成功。

2025-11-26 14:53:48 239

原创 搭建mongo副本集群

选举基于raft一致性算法,选举成功的必要条件是大多数投票节点存活(存活少的话失败)高可用,将数据写入时快速复制到另一个独立节点,接受写故障时自动选举一个新的节点替代。两个或多个从节点(secondary):复制主节点上的新数据和选举时投票。数据分发:将数据从一个区域复制到另一个区域,减少另一个区域的读延时。一个主节点(primary): 接受写入操作和选举时投票。如果失联的是主节点。从节点会发起选举,选出新的主节点。读写分离:不同类型的压力分别在不同节点上执行。如果失联的从节点则不会产生新的选举。

2025-06-05 16:08:51 384

原创 MySQL8.0 binlog不清理导致使用磁盘空间过大问题

由于这个系统一天产生的binlog小于500m(可以从上面的binlog的输出信息看出,例如,binlog的大小,binlog的创建时间),也就是说,一天24小时内,MySQL的binlog不会由于binlog过大而触发binlog的切换,也就是说只有Xtrabackup时才触发了binlog的切换,而又由于限制问题,导致过期的binlog不能被清理,久而久之,过期的binlog一直不能清理导致空间使用越来越多。4、查看3.20的时候刚好是平台下发备份的时间点(怀疑是备份引起的)。5、根据如上情况分析。

2025-03-27 13:56:52 1146

原创 mysql BUG 导致 show processlist 有大量的show slave stauts 处于init状态

备库(备份的时候或者其他逻辑)会执行 FLUSH TABLES WITH READ LOCK 同时sql线程执行DML语句,如果这个时候在执行show slave status 会导致死锁。MySQL :: MySQL Community Server 5.6.23 已发布。查看官方网站发现在5.6.23版本之前有这样一个bug。二、永久解决方案升级数据库版本到5.6.23及以上版本。

2025-02-10 18:13:30 689

原创 oceanbase(ob)基于备份集搭建备租户方式

注意事项:有要有一个源端OB集群和目标端OB集群。该步骤为下一步创建空备租户提前准备连接信息。sys租户获取所有租户的连接信息。

2024-09-10 15:26:41 960

原创 MySQL各个版本root账号没有最高权限的解决方法

如下操作包含MySQL5.6.51、MySQL5.7.36、MySQL8.0.26,不同版本的操作指令细节有差别。4、清除skip-grant-tables参数,重新启动数据库实例,页面显示实例正常。4、清除skip-grant-tables参数,重新启动数据库实例。4、清除skip-grant-tables参数,重新启动数据库实例。1、配置文件中增加skip-grant-tables参数。1、配置文件中增加skip-grant-tables参数。1、配置文件中增加skip-grant-tables参数。

2024-08-21 17:48:26 1419 1

原创 oceanbase架构、功能模块、数据存储、特性、sql流转层等概念详解

一般情况下,地域指的是 IDC 所在的城市。合并一般是由每个租户的 RS 根据写入状态或者用户设置发起调度,每个租户的每次合并都会选取一个全局的快照点,租户内所有的分区都会用这个快照点的数据做一次 Major Compaction,这样每次合并租户所有的数据都基于这个统一的快照点生成相应的 SSTable,通过这个机制不仅能帮助用户定期整合增量数据,提升读取性能,同时还提供了一个天然的数据校验点,通过全局的一致位点,OceanBase 数据库能够在内部对多副本以及主表索引表进行多维度的物理数据校验。

2024-07-19 09:44:07 3559

原创 redis压测和造数据方式

(4) GET:返回key所关联的字符串值,如果key存储的值不是字符串类型,返回一个错误;(13) LRANGE_100:返回列表key中指定区间内的元素,前100条元素;(14) LRANGE_300:返回列表key中指定区间内的元素,前300条元素;(15) LRANGE_500:返回列表key中指定区间内的元素,前500条元素;(16) LRANGE_600:返回列表key中指定区间内的元素,前600条元素;不能转换为数字则报错;(6) LPUSH:将一个或多个值value插入到列表key的表头;

2024-06-27 14:42:35 1528

原创 MySQL8.0备库异常需要重新搭建

mysql 8.0 主备重建 xtrabackup 重新搭建主从

2024-05-20 10:02:41 584

原创 MySQL查看线程内存占用情况

在无法添加索引时,增加join_buffer_size的值,以获得更快的完全连接。这里会话参数调整后,需同时调整/etc/my.cnf的配置,下次服务启动永久生效,另外之前连接的会话线程由于已分配了该buffer大小,调整后内存并不会马上释放。该命令是在线打开内存统计,所以只会统计打开后新增的内存对象,打开前的内存对象不会统计,建议您打开后等待一段时间再执行后续步骤,便于找出内存使用高的线程。内存使用情况,决定着MySQL的性能,内存使用率过高会使系统响应时间变长,严重时内存耗尽还会出现OOM的情况。

2024-05-17 14:45:00 1899

原创 MySQL使用memory表导致备库重启后主备关系异常

备库重启后产生了自身的gtid,解析该gtid发现是备库主动truncated了自身的memory引擎内存表。该机制是mysql为了避免重启后主从memory表数据不一致(memory表重启后数据会丢失),会在数据库重启后自动执行该动作并写入binlog,这个机制导致了备库重启后无法change master到主库,建立主从关系。(会导致正常的表主键冲突等都不会报错 遇到主键或唯一键冲突以及主键不存在时,并不会报错,会直接覆盖数据或者忽略数据不存在,主从复制仍然正常进行。发现主库有数据,但是备库没有数据。

2024-03-25 14:08:03 704

原创 MGR报错 The START GROUP_REPLICATION command failed as the applier module failed to start.

2、解决该问题的方法是执行reset master就行,然后重新在主节点和从节点开启通道。注意reset master 生产环境不要使用,这是集群初始搭建重置binlog。1、原因环境有脏数据,或者环境多此配置mgr失败。或者环境有搭建常规主从同步的脏数据(需要取消掉主从关系 reset slave all)。

2024-02-19 11:25:13 1060

原创 xtrabackup各种备份及备份恢复方式(包含应用binlog恢复步骤)

【代码】xtrabackup各种备份及备份恢复方式(包含应用binlog恢复步骤)

2024-02-18 16:10:11 1439

原创 搭建MaxScale分库分表集群

1) 认证插件提供了登录认证功能,MaxScale 会读取并缓存数据库中 user 表中的信息,当有连接进来时,先从缓存信息中进行验证,如果没有此用户,会从后端数据库中更新信息,再次进行验证2)协议插件包括客户端连接协议,和连接数据库的协议3)路由插件决定如何把客户端的请求转发给后端数据库服务器,读写分离和负载均衡的功能就是由这个模块实现的4)监控插件对各个数据库服务器进行监控,例如发现某个数据库服务器响应很慢,那么就不向其转发请求了5)日志和过滤插件。

2024-01-29 19:16:52 1324

原创 mysql半同步复制和MHA搭建(一文搭建出来MHA架构)

要负责保存日志、比较中继日志,选择主备 MHA会通过Node监控MySQL数据库服务地节点信息,定期检测和返回Master角色地健康状态(健康检查) MHA通过将VIP定义在Master节点上,并且数据库的访问也从此VIP进入,当Master异常时,MHA会进行"故障切换",就是VIP漂移+二进制日志保存 漂移到主备节点后,会通过脚本命令来控制MySQL服务器角色的变更。3)根据上面的内容填写(#去故障的实例执行)5)编辑manager配置文件。2)查看manager日志。8)检测manager状态。

2024-01-29 19:14:59 497

原创 MongoDB原理及功能特性

1)mongodb是一款强大,灵活,易于扩展的通用数据库。2)MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,可以添加更多的节点,来保证服务器性能。3)MongoDB 将数据存储为一个文档,数据结构由键值对组成。4)MongoDB 文档使用BSON格式;字段值可以包含其他文档,数组及文档数组。5)Mongodb的强大在于性能强;灵活在于数据存储为文档型,具有nosql的特性,没有复杂的表结构的约束;

2024-01-10 19:33:04 1864

原创 mysql clone 插件架构、特性、参数、及使用方法

特点1、Clone Plugin 是 MySQL 8.0.17 版本推出一个插件,用于进行数据库的物理备份。2、 Clone Plugin 只备份 InnoDB 存储引擎表,其他类型表不进行备份。架构从上图可以发现,Clone Plugin 很不同的一点是 redo copy 的过程非常短,不需要备份30分钟内所产生的所有 redo log。1、这意味着通过 Clone Plugin 恢复物理备份的速度要远远快于 Xtrabackup。

2024-01-10 19:25:52 883

原创 主从复制搭建

下面的俩参数 timeout 代表当前事务提交10s没有返回ack断掉变成异步复制的方式。a.各节点检查server_id、server_uuid、binlog。slave_enabled=1,代表只要一个从库复制成功就返回ack。3.1 通过mysqldump(XBK)备份构建传统主从。问题4业务比较集中的时候可以选择不设置半同步锁的事务。b.主库(51)创建复制用户和远程管理用户。selinux 关闭。

2023-12-14 19:44:27 386

原创 验证数据库字段过大报错问题(报错 MySQL server has gone away)

导入数据报错:ERROR 2006 (HY000) at line 1: MySQL server has gone away。1)源端开启参数需要重启数据库(写配置文件里面)1)源端开启参数需要重启数据库(写配置文件里面)百度网盘下载data1.txt 文件。1.开启参数需要重启数据库。百度网盘下载1.sql文件。3)目标端数据导入到目标端。2)源端创建目录并授权。4)数据库执行导入命令。

2023-12-14 19:43:12 558

原创 redis 内存

active-defrag-max-scan-fields 1000 整理碎片需要遍历,如果遇到元素超过1000(大key)的就放到单独的处理。active-defrag-threshold-lower 10碎片率小于10%不启动整理 建议 20。active-defrag-ignore-bytes 100 碎片空间小于100mb不启动碎片整理。active-defrag-cycle-min 1 最小1%CPU用于清理碎片。redis内存碎片(批量删除大量key会导致大量碎片)

2023-10-13 13:57:25 439

原创 redis命令大全

redis命令 字符串 哈希 列表 有序集合 集合

2023-10-10 20:02:23 115

原创 搭建redis分片集群

4)客户端可以访问集群中任意节点(包括从节点),节点将会分析要操作的 key,找到对应哈希槽的节点,最终都会被转发到正确节点。7)Cluster bus: 集群节点都通过TCP连接(TCP bus)和一个二进制协议(集群连接,cluster bus)建立通信(在原客户端访问端口之上加上1000),节点之间使用 gossip 协议来发布广播消息,通知配置变更;2)每个主节点下都可能有1个或多个从节点,这些从节点在网络分区或者发生故障时会尝试替代主节点,同时从节点也可用于支撑大规模的读操作;

2023-10-07 18:03:31 233

原创 安装mongodb 7.0.0.最新版本

【代码】安装mongodb 7.0.0.最新版本。

2023-09-06 09:22:30 2606 3

原创 redis CPU高

1、实时监控(查是否有高消耗命令keys * hgetall flushall 也能查热key)redis-cli -p 端口 -a 密码 monitor >文件里面。slowlog-log-slower-than 慢于多少单位(微秒)redis-cli -p 端口 -a 密码 client list。redis-cli -p 端口 -a 密码 --hotkeys。cmd=ping和auth较多可能是短链接消耗CPU。slowlog-max-len 记录多少条慢sql。

2023-07-11 17:00:39 459

原创 TiDB概念

TiDB 会在默认是类似rr级别,但是没有间隙锁的概念。事务是在begin的时候就开启了快照。不是mysql的查询的时候就开启快照了。其他的开启,回滚方式和MySQL一样。包括显示提交隐式提交。惰性检查。类似于乐观锁机制。优化了通过批处理约束检查并减少网络通信来提升性能。tidb_constraint_check_in_place = true 禁用该行为。对于运行不同节点的事务而言,不同事务启动和提交的顺序取决于从PD获取时间戳的顺序。

2023-06-04 22:54:51 387

原创 redis面试问题总结

AOF重写fork一个子进程(先重构文件 读取当前redis数据写入到aof文件里面 覆盖源文件)重写过程中的数据需要追加到AOF文件中(写入到重写缓冲区)AOF 是以实时追加的方式持久化数据的。slow-log-slower-then 选项指定执行时间超过多少微妙。单redis并发能到10W左右。redis 支持一定的原子性。redis 不具备acid中一致性的概念。lru 算法移除最近最少使用的key。说明的时候由入队的前中后的顺序去说明。只能执行连续且无关的命令。全部执行或者全部不执行。

2023-06-04 14:06:48 119

原创 mysql 主从延时增加sql线程方式

WRITESET,表示的是对于事务涉及更新的每一行,计算出这一行的hash值,组成集合writeset。WRITESET_SESSION,是在WRITESET的基础上多了一个约束,即在主库上同一个线程先后执行的两个事务,在备库执行的时候,要保证相同的先后顺序。COMMIT_ORDER,表示的就是前面介绍的,根据同时进入prepare和commit来判断是否可以并行的策略。binlog_group_commit_sync_no_delay_count=1000 #等待多少个。组提交重复值越多越好。

2023-05-29 22:27:51 184

原创 mysql索引相关

> <= >=)在delete 和update 的时候。desc format=json select * from t100w where num=‘11’ and k1=‘222’ and k2=‘ccc’ used_key_parts 列判定。---->慢sql ------> explain sql ----->优化索引改写语句。slowlog ---->慢语句 ----> explain sql ----->索引优化、改写语句。c.主键规划,长度过长()辅助索引会用到主键索引的东西。

2023-05-06 11:27:27 307

空空如也

空空如也

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

TA关注的人

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