自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(331)
  • 资源 (26)
  • 收藏
  • 关注

原创 MySQL最全知识点

精华!MySQL常用命令/知识点~~~

2020-11-09 00:38:26 352

原创 MySQL与PostgreSQL对比

MySQLPostgreSQL数据类型支持支持JSON,但不如PostgreSQL多有一些扩从性,但不如PostgreSQL支持更多的数据类型,如数组、hstore、JSON、JSONB、范围类型等扩展性有一些扩展性,但不如PostgreSQL支持自定义数据类型、函数、操作符,具有强大的扩展性SQL兼容性遵循SQL标准,但有一些自定义扩展更接近ANSISOL标准,支持窗口函数、公共表表达式等性能优化对简单查询进行了优化,特别是读密集型摸作有一个复杂的查

2023-09-20 01:40:46 505

原创 golang使用TiDB的SQL Parse对SQL指纹化

【代码】使用TiDB的SQL Parse对SQL指纹化。

2023-08-18 22:51:30 1121

原创 使用python将csv导入到mysql中

【代码】使用python将csv导入到mysql中。

2023-08-17 00:01:38 1039

原创 通过performance分析mysql内存占用

在 MySQL 使用过程中,偶尔会出现OOM、内存异常突增等异常现象。为了排查内存异常,我们需要分析内存占用情况,找出内存占用的具体事件。我们可以从以下几张performance下的表分析内存,每张表对应不同的维度,有用户维度、主机维度、进程维度。为了打开 performance_schema 功能,我们需要在 MySQL 配置中设置 performance_schema = ON。

2023-07-30 21:53:36 713

原创 MySQL基于复制线程实现MTS并行恢复binlog

通过SQL_Thread的方式可以使用主从本身并行复制的能力,在binlog越多且并行度越好的场景上表现越好。可以断点恢复,人为控制进度,比如stop slave或者遇到错误时,可以断点恢复可以利用多线程复制来加快增量速度,时恢复更快要关闭mysqld手动执行过程较mysqlbinlog方式更为复杂。

2023-07-30 21:34:04 298

原创 perf 分析MySQL底层函数调用

将perf.script文件作为输入,通过Flame Graphs工具,生成svg格式的性能图形。数据采集完成后,通常会生成一个二进制数据文件perf.data,通过perf report可以读取perf.data文件并在终端中展示。采集mysqld从启动到关闭整个生命周期的性能数据,尤其适合采集mysqld刚启动时的性能数据。Flame Graphs 使用perf采集的数据进行图形化展示;持续采集mysqld性能数据,直到ctrl+c取消。采集执行某个SQL时的性能数据。

2023-07-29 23:22:31 284

原创 正则解析SQL表名和SQL类型

该程序可以对SQL进行解析,对/**/hint注释,SQL类型、表名,SQL进行解析。

2023-07-28 23:34:52 243

原创 windows安装docker-desktop

WINDOWS docker安装

2023-07-28 00:29:38 124

原创 oceanbase的数据视图

mysql.* 视图:该类视图包含存储数据库对象元数据的数据字典表和用于其他操作目的的系统表。information_schema.* 视图:该类视图提供对 MySQL 租户中数据库元数据(包括:数据库或表的名称、列的数据类型或访问权限)的访问。OceanBase 数据库的字典视图包含 information_schema.* 视图、oceanbase.CDB_* 视图以及 mysql.* 视图。oceanbase.CDB_* 视图:该类视图可用于获取包含在系统租户和普通租户中的部分数据库对象的有关信息。

2023-06-26 00:19:02 1007

原创 架构设计核心理念

通过上述技术手段,当任何一台服务器宕机或出现各种不可预期的问题时,就将相应的服务切换到其他可用的服务器上,不影响系统的整体可用性,也不会导致数据丢失。伴随业务的发展、创新,运行环境的变化,对技术也就提出了更多、更高的要求。因此,面对不同业务系统的不同需求,对高可用与高性能也会有不同的决策结论,其实现的复杂度也各不相同。所有的预测都存在不正确的可能性。伴随业务的发展、创新,运行环境的变化,对技术也就提出了更多、更高的要求。伴随业务的发展、创新,运行环境的变化,对技术也就提出了更多、更高的要求。

2023-06-10 22:34:48 1039

原创 MySQL新增唯一索引造成数据丢失问题

【代码】MySQL新增唯一索引造成数据丢失问题。

2023-05-27 00:51:44 928

原创 半同步复制下MySQL关闭的优雅方式

在生产环境中一般我们都是通过 kill -15 来关闭,这在单实例模式下是没有问题的,但在半同步复制模式下反而会导致 Master 节点不等待 Slave 节点是否收到二进制日志的 ACK 回包,直接完成事务,然后停止数据库服务,从而可能导致主从数据不一致。同样的场景,假设主库发送 binlog 到从库时,从库 io 线程故障,此时主库等待从库 ack,这时候主库被 kill -9 关闭了,对于客户端来说会收到返回失败信息,此时如果把从库提升为主库是可行的,从库也没有收到事务。

2023-05-26 00:05:47 202

原创 Kubernetes(K8S)POD如何退出

总之,Pod 中的进程必须正确处理接收到的信号,以实现优雅的退出。终止超时:如果在 Termination Grace Period结束之前进程仍然未退出,Kubernetes 将发送 SIGKILL 信号(9号信号)给进程,强制终止进程。信号发送:在 Termination Grace Period 内,Kubernetes 会向 Pod 中的主进程发送 SIGTERM 信号(15号信号),用于请求进程进行优雅的退出。进程处理:进程收到 SIGTERM 信号后,根据进程的信号处理方式进行处理。

2023-05-25 00:27:32 1160

原创 Kubernetes(K8S)的三种探针

执行命令(Exec):通过在容器内执行特定的命令来检查应用程序的状态。如果命令的返回状态码是 0,探针被认为是成功的;否则,探针被认为是失败的。发送 HTTP 请求(HTTP GET):通过发送 HTTP GET 请求到容器内的指定端点来检查应用程序的状态。如果返回的 HTTP 状态码在 2xx 或 3xx 范围内,探针被认为是成功的;否则,探针被认为是失败的。TCP 套接字(TCP Socket):通过尝试建立到容器内指定端口的 TCP 连接来检查应用程序的状态。

2023-05-24 23:33:16 1353

原创 MySQL更新语句执行过程

并把操作的物理数据页修改记录到redo log buffer里,由于update这个事务会涉及到多个页面的修改,所以redo log buffer里会记录多条页面的修改信息。8、然后涉及到的老数据通过快照的方式存储到innodb_buffer_pool里的undo page里,并且记录undo log修改的redo(如果data page里有就直接载入到undo page里,如果没有,则需要去磁盘里取出相应page的数据,载入到undo page里)这里讨论commit的情况,并且双1。

2023-05-24 00:18:52 424

原创 linux的CPU与负载

CPU使用率高表示CPU正在执行较多的任务,但这并不一定表示系统负载也很高。如果系统上存在大量的等待IO的任务或其他资源瓶颈,即使CPU使用率很低,负载仍然可能很高。例如,短时间内有大量CPU密集型任务执行导致CPU使用率很高,但由于任务执行较快,负载平均值可能并不高。相反,长时间运行的IO密集型任务可能导致CPU使用率较低,但负载平均值却很高。因此,评估系统性能时,除了关注CPU使用率外,还应综合考虑负载平均值和其他资源的使用情况,以全面了解系统的负载情况。

2023-05-17 10:15:57 483

原创 linux进程状态以及僵尸进程和孤儿进程的区别

这些进程状态反映了进程在操作系统中的不同状态和活动。进程状态的变化和管理对于系统的性能和稳定性具有重要影响,因此理解和处理进程状态是系统管理和调优的重要方面。僵尸进程的资源(如进程ID和退出状态)仍保留在系统中,但没有实际的可执行代码。在Linux操作系统中,进程可以处于不同的状态,表示其当前的执行状态和调度情况。停止和(Stopped and):进程是一个被暂停的进程的父进程,它正在等待继续执行的信号。僵尸和(Zombie and):进程是僵尸进程的父进程,它正在等待获取僵尸进程的退出状态。

2023-05-17 00:59:25 343

原创 Linux IO调度模式

可以通过修改Linux系统的IO调度器来选择适合特定应用和硬件配置的IO调度模式。通常可以通过/sys/block/<设备名>/queue/scheduler路径下的文件进行调整。例如,可以使用"echo deadline > /sys/block/sda/queue/scheduler"命令将IO调度模式设置为Deadline。在Linux操作系统中,IO调度模式是用于管理和调度磁盘IO请求的算法。Linux提供了几种IO调度模式,用于决定如何处理和排序IO请求,以提高磁盘IO性能和效率。

2023-05-17 00:51:31 449

原创 MySQL体系结构和数据查询的执行过程

它的目的是在多次执行相同查询时,避免重复执行查询的开销,直接从缓存中获取结果,从而提高查询性能。当一个查询被执行时,MySQL首先检查查询缓存,如果之前已经执行过相同的查询并且缓存仍然有效,那么MySQL就会直接从缓存中返回之前的结果,而不再执行查询的实际操作。MySQL的优化器负责在执行查询之前,分析查询语句和相关表结构的统计信息,根据这些信息生成最优的查询执行计划,以提高查询性能。MySQL的分析器负责解析和分析SQL查询语句,进行语法检查和语义分析,并生成查询执行计划供优化器和执行器使用。

2023-05-17 00:33:54 177

原创 「OceanBase 4.1 体验」|OCP Express

OCP Express 是一个基于 Web 的 OceanBase 4.x 轻量化管理工具,作为 OceanBase 数据库的工具组件,它集成在 OceanBase 数据库集群中,支持数据库集群关键性能指标查看及基本数据库基础管理功能。通过 OCP Express,用户可以执行基础的 OceanBase 数据库管理任务,例如创建或变更租户、管理数据库及用户等,还可以查看有关 OceanBase 数据库的监控、性能、诊断、日志等信息。

2023-05-15 01:18:13 419

原创 「OceanBase 4.1 体验」|快速安装部署

OceanBase 数据库是一款完全自研的企业级原生分布式数据库,在普通硬件上实现金融级高可用,首创“三地五中心”城市级故障自动无损容灾新标准,刷新 TPC-C 标准测试,单集群规模超过 1500 节点,具有云原生、强一致性、高度兼容 Oracle/MySQL 等特性。

2023-05-02 17:41:10 4902

原创 Kubernetes的资源模型与资源管理Qos

并且,Kubernetes 会保证只有当 Guaranteed 类别的 Pod 的资源使用量超过了其 limits 的限制,或者宿主机本身正处于 Memory Pressure 状态时,Guaranteed 的 Pod 才可能被选中进行 Eviction 操作。QoS 划分的主要应用场景,是当宿主机资源紧张的时候,kubelet 对 Pod 进行 Eviction(即资源回收)时需要用到的。在Kubernetes中,Qos用于对不同的pod进行分类,以便于K8S在资源不足时,按照优先级调度pod。

2023-04-12 00:03:10 133

原创 mysql on k8s statefulset部署实践

mysql on k8s statefulset部署实践

2023-03-24 01:24:15 725

原创 golang对mysql进行增删改查

golang对mysql进行增删改查

2023-03-14 01:07:05 154

原创 基于Holt-Winters方法对资源进行预测

基于Holt-Winters方法进行预测

2023-03-14 01:00:00 450

原创 MySQL的半一执行读

MySQL的半一致性读

2023-03-14 00:31:36 412

原创 通过修改db重置grafana密码

重置grafana密码

2023-03-05 18:25:04 105

原创 使用packetbeat对MySQL进行网络抓包

使用packetbeat对MySQL进行网络抓包

2023-02-18 22:16:12 1127

原创 MySQL B+树结构解析以及深度计算

MySQL B+树以及深度计算

2023-02-15 00:19:42 1058 1

原创 ELK采集MySQL慢日志实现

使用ELK采集mysql慢日志进行统计分析

2023-02-14 23:38:29 3234

原创 TiDB性能调优

TiDB\TIKV性能调优

2023-01-03 23:34:19 2103

原创 TiDB问题排查

TiDB查用问题排查手册,附思维导图

2023-01-02 20:58:45 2422

原创 四款官方MySQL Operator

MySQL Operator

2022-10-07 17:43:57 772

原创 golang rocketmq消费示例

golang rocketmq消费示例

2022-08-20 00:38:10 661

原创 python pdf转word

python pdf转word

2022-08-20 00:33:25 279

原创 go语言http接口调用示例

go语言http调用示例

2022-08-18 23:17:36 594

原创 go语言优缺点

go语言优缺点

2022-08-17 23:32:16 909

原创 Kubernetes的Projected Volume

Kubernetes 支持的 Projected Volume

2022-07-13 00:34:09 310

原创 K8S常用命令

Kubernetes常用命令

2022-07-07 00:55:10 1011

go-sniffer抓包工具

支持mysql、mongodb、redis、hhtp抓包,二进制文件 可直接使用

2022-01-01

elasticsearch运维实践

elasticsearch运维实践

2021-08-12

tidb中文官方文档

tidb中文官方文档!

2020-10-03

FlameGraph火焰图

FlameGraph火焰图,结合使用perf分析性能问题!

2020-07-15

mongodb-compass

mongodb-compass,mongo可视化工具!

2020-07-14

阿里云云监控对接grafana插件

阿里云云监控对接grafana插件!

2020-07-14

MySQL8.0备份工具xtrabackup,支持8.0.20版本

MySQL8.0备份工具xtrabackup,支持8.0.20版本!!!

2020-07-14

oracle压测工具swingbench2.6等组件

内含cpumonitor、datagenerator、dbtimemonitor、MonitorDB、swingbench、traceanalyzer。最新版本!!!

2020-07-09

OnVUE-3.23.25安装包

VUE考试工具,windows版!!!

2020-07-01

clickhouse中文文档

clickhouse中文文档!!!

2020-06-26

oracle组播测试工具

oracle组播测试工具,可用!

2020-06-07

centos6 asm依赖包

centos6 asm依赖包 绝对可用!

2020-06-07

greenplum6.7安装包

greenplum6.7安装包

2020-06-04

阿里开源ETL工具DATAX

阿里开源ETL工具DATAX

2020-05-29

redis校验工具redis-full-check

redis校验工具redis-full-check,配合redis-shake使用!!!

2020-05-27

Typora转换工具pandoc

Typora转换工具pandoc

2020-05-27

阿里mongo同步工具mongo-shake

阿里mongo同步工具mongo-shake

2020-05-27

阿里redis-shake同步工具

阿里redis-shake同步工具

2020-05-27

mysql8.0官方文档离线版

mysql8.0官方文档离线版

2020-05-27

mysql5.7官方文档离线版

mysql5.7官方文档离线版

2020-05-27

greenplum6推荐备份工具 gpbackup

greenplum6推荐备份工具 gpbackup

2020-05-27

SQL Server 压测工具 HammerDB-3.3

SQL Server 压测工具 HammerDB-3.3

2020-05-27

oracle 专业压测工具 swingbench2.5

oracle 专业压测工具 swingbench2.5

2020-05-27

es 压测工具 esrally-dist-1.4.1.tar.gz

es官方压测工具,当前最新版本!

2020-05-27

oracle centos7 asm依赖包

oracle asm依赖包,绝对可用,centos7版本!

2020-05-27

空空如也

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

TA关注的人

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