自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (11)
  • 收藏
  • 关注

原创 奇葩问题:PGPOOL自动容灾切换,主备不生效原因

只要手不贱,奇葩不出现

2025-04-13 10:59:49 245

转载 Percona Toolkit相关简化工具[摘抄]

Percona Toolkit简称pt工具,是Percona公司开发用于管理MySQL、MongoDB 的工具,功能包括检查主从复制的数据一致性、检查重复索引、定位IO占用高的表文件、在线DDL等,DBA熟悉掌握后将极大提高工作效率。这些工具是个人或“一次性”脚本的理想替代品,因为它们经过专业开发、正式测试和完整记录。它们也是完全独立的,因此安装既快速又简单,而且没有安装任何库。文章引用地址:https://zhuanlan.zhihu.com/p/395574271。

2025-02-14 10:42:07 35

转载 Postgresql 的窗口函数[来源于其它博主]

前三列来源于表score, 第四列表示取每位学员的的平均分,partition by stu_name表示根据字段stu_name进行分组,round(x,y)为四舍五入函数。聚合函数将结果集进行计算,通常返回一行,窗口函数也是基于结果集进行计算,通常返回多行。first_ value() ——取结果集每个分组第一行数据的字段值。last_value () 取结果集每个分组的最后一行数据的字段值。nth_value()—— 取结果集每个分组的指定行数据的字段值。1、avg()——计算分组数据平均值。

2025-01-06 10:44:19 56

原创 k8s 1.28 聚合层部署信息记录

如果同时提供 --client-ca-file 和 --requestheader-client-ca-file,则请求首先检查 --requestheader-client-ca-file 的 CA,然后再检查 --client-ca-file。如果不被允许,则请求不被批准。因此,对于 --client-ca-file 选项(用于授权控制平面组件和最终用户)和 --requestheader-client-ca-file 选项(用于授权聚合 apiserver 请求),请使用不同的 CA 证书。

2024-11-29 10:17:59 937

原创 k8s 1.28 二进制安装与部署

第一步 :配置Linux服务器#借助梯子工具#说明haproxy与keepalived 主要提供k8s master 的kube-apiserver 组件的高可用实现。kube-controller-manager Kubernetes 自带的控制器例子包括副本控制器、节点控制器、命名空间控制器和服务账号控制器等。它是一个永不休止的控制回路组件,其负责控制集群资源的状态。

2024-11-29 10:16:35 1635

原创 K8s 概念知识梳理

主要采用vxlan、host-gw。它是Master 在 Node节点上的Agent,管理本机运行容器的生命周期,比如创建容器、Pod挂载数据卷、下载secret、获取容器和节点状态等工作,kubelet将每个Pod转换成一组容器。3.Calico 支持混合使用路由和Overlay网络模型,BGP路由模型用于二层网络的高性能通信,IPIP或VXLAN用于跨二层网络节点间Pod报文的转发。根据调度算法为新创建的Pod 选择一个Node 节点,可以任意部署,可以部署在同一个节点上,也可以部署在不同的节点上。

2024-11-18 10:20:50 625

原创 yum 异常问题处理

如果在使用命令yum clean all 之前,将/etc/yum.repos.d/下的yum配置删除,可能出现上面的问题。但非正常情况下,需要手动删除/var/cache/yum 目录下的所有目录与文件。初时按照网上的处理方式处理,引入了该有的误区,而后通过仔细阅读日志,发现其中有关/var/cache/yum 的字段。/var/cache/yum 下面缓存的是yum仓库的一些rpm的安装部署包以及依赖关系。#根据日志,判断为/var/cache/yum目录下缓存的问题。一、yum的常用命令。

2024-11-18 09:54:10 553

原创 Nebula NGQL语言的使用 一

找到年龄大于35的球员且该球员被VID为100的球员关注(WHERE语句限定年龄,$$符号表示目标点,YIELD语句指定返回的结果并别名展示)#找到VID 100 关注的球员所效力的球队(两种方式:第一种方式中使用管道(pipe),第二种方式中使用临时变量)#在两个点之间插入多条同类型的边,可以使用ranking参数"101"@1 其中1 表示ranking的值。第四种创建图空间的方式,是通过指定partition_num与replica_factor值的方式。#删除边,删除带有ranking值的边。

2024-11-12 10:51:03 645

原创 Mysql 5.7 grant 授权异常

第一次遇到这种授权,所以记录下。该语句在SQL server 与 Oracle中使用较多。但关键字不一样,特此记录。从上面查看权限都是正常的,问题点在于grant 授权出现错误说明。1.检查 mysql.table_priv 表,查看表的所属。2.检查 mysql.user 表,查看用于与白名单。一、Mysql 问题描述。4.查看 被授权用户的权限。3.查看 授权用户的权限。

2024-11-01 16:49:16 524

原创 Nebula Graph 图数据库初识

图数据库中的 点(vertex) 更象是 关系型数据库中的一行数据,它保存的是一个实体的记录,包括VID(唯一标识号),在插入Tag中时,会指定VID(用于标识对象)。图数据库中的 Edge 更象是 关系型数据库中的表,它保持的是不同相似对象之间的关系,更像ER关系的连接字段,在插入Edge数据时,会将ER关系记录到Edge中。在边类型 存储的边信息中,存在大量的类似信息,为了区分这些信息,加入了RANK。图数据库中的 Tag 更像是 关系型数据库中的表,它保存的是一类相似对象。三、可视化web安装。

2024-10-17 21:34:23 372

原创 Mysql to Starrock 同步的数据校验pyhton脚本

【代码】Mysql to Starrock 同步的数据校验pyhton脚本。

2024-10-10 18:14:17 246

原创 Go语言学习代码记录

【代码】Go语言学习代码记录。

2024-10-10 18:07:21 579

原创 Go语言学习第四章

(9)switch穿透,利用fallthrough关键字,如果在case语句块后增加fallthrough,则会继续执行下一个case,也叫switch穿透。(5)case后面不需要带break,程序匹配到一个case后就会执行对应的代码块,然后退出switch,如果一个都匹配不到,则执行default。(6)default语句不是必须的,default语句可以放在任意的位置,不影响default最后执行的特性(case都没有匹配的情况下)for循环在执行条件判定后,先执行的循环体部分,再执行步进。

2024-10-10 18:06:12 282

原创 Go语言学习第四章

(9)switch穿透,利用fallthrough关键字,如果在case语句块后增加fallthrough,则会继续执行下一个case,也叫switch穿透。(5)case后面不需要带break,程序匹配到一个case后就会执行对应的代码块,然后退出switch,如果一个都匹配不到,则执行default。(6)default语句不是必须的,default语句可以放在任意的位置,不影响default最后执行的特性(case都没有匹配的情况下)for循环在执行条件判定后,先执行的循环体部分,再执行步进。

2024-10-10 18:05:26 550

原创 Go语言学习第三章

简单的说,就是用于存放小数值的,比如3.14,0.28,-7.19等等。int 有符号 32位系统占用-4字节/64位系统占用-8字节。uint 无符号 32位系统占用-4字节/64位系统占用-8字节。float32 占用4字节的存储空间。float64 占用8字节的存储空间。int8 占用1字节的存储空间。uint16 占用2字节。uint32 占用4字节。uint64 占用8字节。int16 占用2字节。int32 占用4字节。int64 占用8字节。uint8 占用1字节。

2024-10-10 18:04:00 416

原创 Go语言学习第二章

数值型1:整数型(int,int8,int16,int32,uint,uint8,uint16,uint32,uint64,byte)第三种,如果没有写变量的类型,那么根据"="后面的值进行判定变量的类型(自动类型推断)派生数据类型/复杂数据类型:指针,数组,结构体,管道,函数,切片,接口,map。//设计者认为上面的全局变量的写法泰麻烦了,可以一次性声明。基本数据类型包括:数值型,字符型,布尔型,字符串。使用var 声明变量,并在变量后声明类型。5、支持一次性声明多个变量(多变量声明)

2024-10-10 18:03:21 334

原创 Go语言学习第一章

SDK下载地址:Golang中文社区:https://studygolang.com/dl (1.15.6版本)SDK安装目录建议:一般安装再D:/golang安装时,基本上是傻瓜式安装,解压就可以使用。9、直接执行test.exe文件,或者在dos下运行test.exe程序。10、可以使用 go run 对test.go进行后台隐藏编译与执行。Go语言的官网为:golang.org,无法访问,需要翻墙。8、编译go程序,生成test.exe文件。5、配置windows 系统的go环境。

2024-10-10 18:02:48 414

原创 Oracle 12201非PDBS模式单机部署(静默安装)

【代码】Oracle 12201非PDBS模式单机部署(静默安装)

2024-10-10 17:47:57 661

原创 OceanBase 3.2.2 数据库问题处理记录

1.排查思路:OceanBase 的事务,也就是SQL语句,存在一个唯一的trace_id,通过trace_id找到执行的sql_id。处理:增加OBserver服务器的内存,采用轮询的方式关闭Observer增加内存,需要提前确认OB数据的Master。进入OCP中,进入问题集群中,停止集群,然后重启启动集群,然后重启所有OBserver 上的ocp_agent。2.通过trace_id查找OBserver服务器上的日志(选举日志,observer日志等)。集群状态,zone的状态。

2024-10-08 11:16:58 542

原创 OceanBase 关于一号表笔记与ERROR 1060(42S21)问题

1.OBserver中的location cache 会保存observer 曾经访问过的实体表的位置信息(meta table 主要包括 __all_core_table、__all_root_table、__all_tenant_meta_table 三张内部表。4.__all_root_table 表记录着系统表的信息与__all_tenant_meta_table的位置信息。3.__all_core_table 中记录着__all_root_table表的位置。

2024-09-28 14:14:20 702

原创 OceanBase 一级表分区记录

好记性不如乱笔头,毕竟IT是用脑搬砖,熬夜就不用说了,时间长了容易强迫症(建议适当放宽心,跑步,散步,游走于城市的中心与角落,见证不一样的风景)。记录一个关于OceanBasede一级分区表的创建,很久没有整过分区表了,记忆中还是关于Oracle,Mysql 的分区,还是模糊的。业务需求说明:存在一张表,需要存放60个月的数据也就是5年,按每天存放,其中day不是唯一,全表中只有id唯一。#索引创建并未按照业务的逻辑创建,只是随手记录。

2024-09-28 12:38:39 742

原创 OceanBase 3.X 高可用 (一)

OceanBase 3.X 高可用(一)

2024-09-22 17:35:08 763

原创 OceanBase迁移工具说明

前言:过往执行OB迁移到Mysql 过程中,都需要手动进行SQL DDL、DML的语句改写,用DBCAT工具可以大大增加工作效率。

2024-09-21 16:48:35 764

原创 OceanBase 的并发简述笔记

但是它们两个表的连接键或分区键相同的情况下,会以该分区表的分区分布为基准,重新分布另一个表的数据。Partition-Wise Join(以分区的方式进行JOIN):要求分区表且分区方式相同,物理分布一样,并且JOIN的连接条件为分区键时。可以简单理解为表组。分布式执行的Hint:PQ_DISTRIBUTE,结合ORDERED、LEADING、USE_NL、USE_HASH和USE_MERGE等。BROADCAST:关联表中的其中一个表够小,且小表行数乘以查询服务器的数量远小于另一个表时,采用广播的方式。

2024-09-21 15:17:45 608

原创 Orchestrator 与 Mysql 8.0 的兼容性

从 MySQL 8.0.22 开始,使用SHOW REPLICA STATUS代替SHOW SLAVE STATUS,该语句从该版本开始已弃用。所以:Mysql 8.0.22前可以用Orchestartor。二、Mysql 8.0。

2024-09-14 13:45:12 417

原创 Java 关于 @Transient 注解的作用说明

按照其说法在java的数据字段定义的方法类中,使用了一个比如 timestamp 的属性,该属性有set与get的方法,且timestamp的属性加了@Transient注解,: 我的第一感觉是select * from 的语法,后面经过口头沟通说是这样的语法,但是实际排查其代码,发现并非是select * from 的语法。鉴于上面两个意思,那么很显然,@Transient 只是针对临时需要存储的数据的一个空间命名的属性名,而被这个标记的属性名,只是临时存放获取的数据。为了少背锅,研究点关于代码的问题。

2024-09-14 09:57:41 692

原创 OceanBase 企业版OMS 4.2.3的使用

企业版本的OMS 在迁移这块,目前支持的源端包括七类:OceanBase Mysql Mode,OceanBase Oracle Mode,Oracle,Mysql,Postgresql,DB2_LUW,TiDB。企业版本的OMS在同步这块,目前支持的源端:OceanBase Mysql Mode,OceanBase Oracle Mode,OceanBase ODP,OceanBase IDB,Oracle,Mysql。总结:OMS的迁移与阿里云上RDS相差无几,不过是迁移与同步的类型存在区别。

2024-09-12 18:09:38 850

原创 OceanBase慢sql排查与HINT 说明

而延迟物化是将where条件分别在colums上进行分别过滤,并获取到正确的所有的columns值的bitmap,然后通过所有columns列的bitmap进行位与操作,得到满足where条件的所有bitmap,然后根据bitmap获取select的字段。然后根据dept表的deptno的N个数值,进行N次对emp表的deptno的遍历,需要创建索引。#与并行执行相关的Hint:PARALLEL Hint,NO_PARALLEL Hint,USE_PX Hint 和 PQ_DISTRIBUTE Hint。

2024-09-10 08:34:30 713

原创 OceanBase 基于企业版本OAT安装与OMS安装与InfluxDB的集成

一、前言与环境准备说明:OceanBase V3 的OMS手动安装与V4的OMS手动安装是存在区别的,建议V4版本的OMS通过OAT进行安装。前言:OAT 是 OceanBase V4是企业版本安装Web界面的简易安装工具。InfluxDB 是OMS 的监控时序数据库。OMS 是OceanBase 的迁移同步工具。环境条件:1.需要在OMS服务器上安装docker V18以上的版本2.需要在服务器上配置yum仓库(建议阿里云的yum仓库)3.在OceanBase数据库上创建oms的租户、账

2024-09-09 21:00:47 871

原创 OceanBase 关于 place_group_by HINT的使用

使用place_group_by 的耗时少于no_place_group_by的耗时,原因可以查看执行计划的COST区别。表示在多表关联时,如果满足单表查询后直接进行group by 的情形下,在跟其它表进行关联统计,减少表内部联接。表示在多表关联时,在关联后才对结果进行group by。#不使用place_group_by hint的情况。

2024-09-03 18:17:39 439

原创 OceanBase性能相关

优化信息(Optimization Info):OB官网未解释,但是OB的DBA入门到实践一书中有提及,如下。记录来源:(OceanBase)DBA 从入门到实践。执行计划中的扩展信息记录。一、慢SQL与性能视图。慢SQL性能查看视图。

2024-09-03 09:57:48 425

原创 OceanBase 的ODP OBproxy 的记录

OBproxy 会通过proxy@sys账户获取租户的信息,然后根据租户的信息,以及根据SQL的from语句部分与where条件部分进行对比,确定路由规则(LDC,Leader,读写分离等),获取本地缓存的路由表(如果过期,会在接触到Observer后,反馈给ODP,然后进行目标Observer寻址),然后进行黑白名单确认,确认后,转发SQL。分布式执行计划:对SQL进行解析,然后产生大量的数据重分布问题,然后再进行SQL部分的jion运算,并进行合并,导致占用大量的时间。ODP路由的功能与策略。

2024-09-02 20:55:13 466

原创 OceanBase block_file与log过大 的问题

block_file 是存放sstable的数据文件,由datafile_disk_percentage 参数与datafile_size参数决定,两个参数同时配置,以datafile_size为主。因为block_file 的大小是预分配的,支持调大,也支持参数调小,但是不支持自动缩容,划分后,会根据实际的磁盘大小进行预分配,占用大量的存储,但是实际往往使用不了多少。缩容的方式,需要先对datafile_disk_percentage 与 datafile_size 参数的调整。

2024-09-02 19:22:35 664

原创 Oracle RAC关于多节点访问同一个数据的过程

用户1访问rac1 ,通过rac1获取AA数据块后,会加上latch锁。用户2通过rac2访问AA数据块,在rac2的缓存中发现存在rac1正在使用,需要等待rac1使用完成,且释放锁后才能获取AA数据块并加上锁,再进行操作。Oracle RAC 存在多个计算节点,但是使用的共享存储。那么多个节点共同访问同一个资源,怎么保证一致性。

2024-09-02 18:51:01 1314

原创 Oracle 排查慢SQL

cpu_time as “cpu占用时间”,buffer_gets as “缓存获取次数”,disk_reads as “磁盘读取次数”,user_io_wait_time as “IO等待时长”,plsql_exec_time as “plsql执行时长”cost as “估算成本”,cardinality as “估算输出行数”,time as “估算时间微妙”,bytes as “估算输出的字节数”,cpu_cost as “估算的CPU花费”,io_cost as “估算的IO花费”

2024-06-14 15:27:05 1268

原创 Oracle复习部分记录

cpu_time as “cpu占用时间”,buffer_gets as “缓存获取次数”,disk_reads as “磁盘读取次数”,user_io_wait_time as “IO等待时长”,plsql_exec_time as “plsql执行时长”cost as “估算成本”,cardinality as “估算输出行数”,time as “估算时间微妙”,bytes as “估算输出的字节数”,cpu_cost as “估算的CPU花费”,io_cost as “估算的IO花费”

2024-06-13 19:13:14 1060

原创 mysql 锁解决的办法

可以查看锁的信息,TRX_MYSQL_THREAD_ID 为processlist的表中的会话id,用于kill。可以查看到请求的事务ID,请求的锁id。阻塞事务id,阻塞锁id。可以查看锁的模式,类型,锁的表。

2023-09-07 15:03:54 398

原创 gh-ost概述(二实践)

gh-ost

2023-08-10 10:43:08 349

原创 gh-ost的概述说明(一)

连接master库, --assume-master-host=a.specific.master.com指定连接的master库或者通过同时配置—allow-master-master --assume-master-host=a.specific.master.com指定连接的master库。–throttle-http-interval-millis 参数用于限制 gh-ost 工具在发送连续的 HTTP 请求时的时间间隔,以控制请求的速率。有限次数的重试,如果没有成功,gh-ost会退出。

2023-08-10 10:33:44 1046

原创 Hadoop集成Hive

说明:服务器已用主机名代替,可根据自己的需求,改为IP地址环境1、java版本1.82、Rsync CentOS中默认存在3、zstd、openssl、autoconf、automake、libtool、ca-certificates安装4、ISA-L5、nasm与yasm6、ssh7、hadoop8、Linux环境变量配置9、hadoop的各类文件配置。

2023-07-21 15:18:09 1918 1

RMAN 关于恢复到过去的时间点

一、概述,RMAN基于SCN,TIMESTAMP的恢复,是作用于redo.log日志上面的。

2018-11-19

RMAN 关于各种文件丢失后的恢复

关于oracle数据库文件丢失,主要包含: 参数文件,控制文件,联机日志文件(redo),归档日志文件(archive), 撤销文件(undo),数据文件(data)

2018-11-19

RMAN 在新机上的恢复

利用Rman的全备(当时的控制文件controlfile,pfile/spfile,datafiles,redo log等文件), 将 源数据库上的数据恢复到新机上,或者说是将源数据库(迁移)至新机上。

2018-11-19

RAC+RMAN单实例的恢复

1)拷贝源数据库的备份(分清是全备或是增量备份)到目标库。 2)在目标库上创建相应的路径。 3)拷贝源库的pfile(参数文件) 或者,在目标库上启动到nomount状态, 然后根据备份恢复pfile文件(此文档使用此方法)。 4)恢复备份中的controlfile到目标库,并使库至mount状态。 5)恢复数据,更改数据文件,临时文件,日志文件的路径。 6)恢复数据库。

2018-11-19

Oracle 数据库监听分析及其说明

Oracle数据库监听,为数据库的运行状态,向外连接提供了时时通讯方法,就犹如房屋中介一般,为租客与房东提供相互所需要的信息!

2018-11-19

Oracle 行迁移与行链接的实验详解

当一条记录被更新的时候,数据库引擎首先会尝试在它保存的数据块中寻找足够的空闲空间,如果没有足够的空闲空间可用,这条记录将被拆分为两个部分,第一个部分包括指向第二部分的rowid,该部分任然保留在原来的数据块中,第二部分包含所有的具体数据,将保存到另外一个新的数据块中,这个就成了行迁移。

2018-11-19

Rman备份的创建

创建Rman表空间 注:首先注意原oracle数据库中,表空间所存放的路径 SQL>select file_name from dba_data_files; 创建表空间 SQL>create tablespace rmantablespace datafile ‘/u01/rmantablespace.dbf’ SIZE 1024M SQL> autoextend on next 10M maxsize unlimited;

2018-11-19

Oracle 8大闪回模式及其特性及其详细实验解释

闪回事务查询,闪回查询语句!关于闪回数据归档FBDA等等

2018-11-19

Oracle 闪回,实验加解释

闪回恢复区主要通过3个初始化参数来设置和管理 db_recovery_file_dest:指定闪回恢复区的位置 db_recovery_file_dist_size:指定闪回恢复区的可用空间大小 db_flashback_retention_target:指定数据库可以回退的时间,单位为分钟,默认1440分

2018-11-19

Oracle 块,区,段等结构的说明以及实验验证

二、对逻辑结构类型优化的思考 Oracle数据块是由系统磁盘中的块映射而成, 共支持五种2KB,4KB,8KB,16KB,32KB块大小。 Oracle 区是由一次存储空间分配而获得的数个连续数据块组成。 Oracle 段是由一个或多个区组成,且存在于一个表空间中。 Oracle 表空间是由一个或多个段组成。

2018-11-19

VM 下Linux Oracle Rac 详细安装

此文档也会发表在博客内,此文档有相对应的错误解决方式!

2018-11-19

空空如也

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

TA关注的人

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