自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(220)
  • 资源 (2)
  • 收藏
  • 关注

原创 Oracle 比特币勒索恢复 ORA-16703 方法

前几天某客户紧急求助我们,其Oracle数据库由于重启之后无法正常启动。最后通过数据库全备进行了一天一夜的恢复,最后仍然无法正常打开数据库。alter database open时检查发现数据库报错ORA-16703.从用户提供的信息来看,确实是在open resetlogs的时候出现的错误。那么这个错误意味着什么呢? 其实第一眼看到这个错误;我们就大概清楚这是Oracle的数据字典出问题...

2020-03-15 21:41:53 1552 1

原创 使用XTTS增量进行HP Unix到Soalris Sparc的数据库迁移

自从2015年初进行了xtts增量的U2L迁移测试之后,国内很多人都开始利用这种方案进行数据库跨平台迁移了,基本上都是利用Oracle 封装的perl脚本。

2017-05-07 10:47:08 1498

原创 Oracle 11g asm中不同au size下datafile的au分布初探

今天有朋友问11g中asm 的au size不为1m的情况下,datafile的au 分布是怎么样的?通过10g的方式去kfed read,发现不对了,原帖地址:~~【高手请进】在oracle11g中通过kfed找到ASM AU空间分布信息?下午花了一点时间研究了一下,其中还有些没有明白,不过基本上搞清楚了,下面是简单的实验过程:开始我也没明白其中的关系,首先尝试用strace 去跟踪

2012-08-27 21:31:47 1664

原创 goldengate 学习系列1–10gasm to 11gR2 asm 单向复制(DDL支持)

详见原文博客链接 http://www.killdb.com/2012/08/15/goldengate-%e5%ad%a6%e4%b9%a0%e7%b3%bb%e5%88%971-10gasm-to-11gr2-asm-%e5%8d%95%e5%90%91%e5%a4%8d%e5%88%b6ddl%e6%94%af%e6%8c%81.html

2012-08-15 22:03:48 964

原创 11gR2中awr 相关脚本的说明

详见原文博客链接 11gR2中 awr 相关脚本的说明

2012-08-08 20:12:30 3128

原创 10.2.0.4+版本PSU以及相关bundle patch列表-(2012/7/18 update)

详见原文博客链接   http://www.killdb.com/2012/07/19/10-2-0-4%e7%89%88%e6%9c%acpsu%e4%bb%a5%e5%8f%8a%e7%9b%b8%e5%85%b3bundle-patch%e5%88%97%e8%a1%a8-%ef%bc%882012718-update.html

2012-07-19 19:37:19 1214

原创 Where is the backup of ASM disk header block? –补充

详见原文博客链接 http://www.killdb.com/2012/06/13/where-is-the-backup-of-asm-disk-header-block-%e8%a1%a5%e5%85%85.html

2012-06-13 23:36:52 697

原创 oracle 11.2.0.3 所有平台下载地址

详见原文链接地址 http://databasefans.com/read.php?tid=80

2012-03-06 11:22:43 3683 1

原创 oracle 11.2.0.2 所有平台下载地址

详见原文地址 http://databasefans.com/read.php?tid=149

2012-03-06 11:22:02 1765

原创 undo丢失且存在未提交事务的恢复

详见原文博客地址  http://www.killdb.com/2012/01/31/undo%e4%b8%a2%e5%a4%b1%e4%b8%94%e5%ad%98%e5%9c%a8%e6%9c%aa%e6%8f%90%e4%ba%a4%e4%ba%8b%e5%8a%a1%e7%9a%84%e6%81%a2%e5%a4%8d.html

2012-01-31 16:33:13 1058

原创 关于ora-1652的一点总结–续(详解rowid,index entry header)

详见原文博客地址 http://www.killdb.com/2011/10/02/%e5%85%b3%e4%ba%8eora-1652%e7%9a%84%e4%b8%80%e7%82%b9%e6%80%bb%e7%bb%93-%e7%bb%ad%e8%af%a6%e8%a7

2011-10-03 00:19:10 1049

原创 发现一款免费的数据库管理平台,支持20+数据库

从background event来看,似乎确实不太正常,db file parallel write已经到了32ms,同时log file parallel write也是较高的。可以白嫖的数据库管理诊断平台来了,可以支持5套数据库的管理,性能分析,自动化巡检,高可用切换等多种功能。实际上这个环境,除了这些问题之外,还有很多小问题,比如sql version问题。另外,据网友反馈,用户反馈的业务慢,卡顿通常是业务登录就卡。言归正传,我们来看看提供的性能数据究竟是怎么样的,据反馈现象很奇怪。

2024-08-05 12:55:57 328

原创 100%兼容MySQL的数据库有哪些?

MTK全称为 Database Migration Toolkit,是一个可以将Oracle/DB2/MySQL/openGauss/SqlServer/Informix数据库的数据结构,全量数据高速导入到MogDB的工具。通过MTK初次迁移之后,我们发现有几个试图没有成功,当然,后面通过我们微调即可重新迁移(注意,mtk可以单独迁移失败的对象)。支持Oracle/MySQL/DB2到MogDB/openGauss的存储过程,函数,触发器,包迁移并对语法进行改写。大家可以看到,mdb使用还是非常的简单;

2024-07-30 08:57:51 405 1

原创 顶级superdome flex都扛不住了,怎么办?

虽然群友说这个awr报告的时间段,跑批很快,但是从rac 的数据,我们可以看到,其实有几个指标还是点略高,比如Avg global cache cr block flush time,Avg global cache current block pin time,Avg global cache current block flush time。从这些大型系统的负载来看,国产数据库还有相当长的一段时间要走,可能通过zData一体机+国产数据库的形式,是一个相对较好的支撑方案,通过硬件来弥补软件层的不足。

2024-07-22 09:46:05 456 2

原创 关于mogdb vs kingbase的测评 说明

老实说第一眼看到这个文章,我是充满了疑惑的,毕竟对方测试服务器配置还是非常高的,kunpeng920(128c+500G SSD。对于MogDB 而言,这里我补充一句,如果如果安装 MogDB 的时候,使用ptk进行自动化安装部署,那么ptk会进行一些常规参数的优化调整,基本上可以满足大部分生产系统运行。实际上就是当前的环境我也测了Kingbase情况,跟MogDB相比,又高又低。这里文件就贴出来了。大家可以清楚都看到,有几个场景的数据我这里比该博主的测试数据要高(注意,我这里测试环境配置要低的多)。

2024-07-15 15:59:38 453

原创 没想到MySQL 9.0这么拉胯

首先我们先不说这个版功能如何,性能如何,单纯的就看这个版本的生命周期就知道,太短了。真的不太适合上生产。目前MogDB 5.x版本暂时还不支持,但是openGauss 6.0 已经支持了,因此MogDB6.0(预计2025年3月30号发布)也会支持这个特性。MySQL 7月1号发布了9.0版本,然而没想到并没有引起大家的狂欢,反而是来自DBA圈子的一篇吐槽,尤其是PG界吐槽更厉害。实际上这个功能,OpenGauss6.0也已经支持了,因此在后面即将发布的MogDB6.0 也应该会支持这个功能。

2024-07-12 15:20:46 387 1

原创 openGauss真的比PostgreSQL差了10年?

可能之前DBA是为了维护方便,索引几乎都是清一色的local分区,然而后面发现SQL的逻辑读非常高,在双11来临之前改成global index之后,逻辑读降低了数倍。原生pg是多进程架构,而魔改之后的openGauss是线程架构,架构都不一样了呢,毫不夸张的说,基本上是完全不同的两款数据库产品了。这里我想说的是,MogDB在这方面实际上也做了一些努力,在MogDB 3.1版本之前其实还是比较慢的。实际上我们可以看到PG的分区创建方式是有所区别的,简单的讲,其子分区已经是一个独立的表了,独立的文件。

2024-07-02 22:20:37 619

原创 突然!某大客户核心凌晨突然崩溃....

Oh my God!实际上这个数据块的结构是完整的,只是block的数据异常(包括row directory),因此这是一个逻辑坏块。比如看该block的itl中比较新的一个事务对应的redo record记录,发现是有行迁移的(实际上看block dump也能看到)。那么如果预防这样的问题,实际上oracle提供了一些方法,比如打开block和索引的读写校验,实际上就可以避免上面测试遇到的问题。难道说之前写数据落盘的时候,这个block就有问题了,所以后面构造的cr block也是有问题的。

2024-06-27 20:07:48 515

原创 PostgreSQL兼容性最强的国产数据库居然是...

WITH语句也是Common table expressions (CTEs),可以把大的复杂查询分解为简小的片段,从而更易阅读和理解,同时使用WITH语句可以“物化”缓存多次重复的计算,降低冗余子查询及函数的副作用。首先我要说的是国产数据库这么多种,实际上有不少都是基于PostgreSQL的,这其中有完全套壳的,也有基于PostgreSQL去魔改的,具体的名字就提了,我相信很多网友都知道了。相反这个系统是核心系统之一。要说For PG 兼容性,MogDB 其实做的点很多了,这类我挑选一部分供大家参考。

2024-06-22 14:26:36 1408 1

原创 难以置信!这个国产数据库跟Oracle的兼容性高达99%.....

前面写了两篇关于国产数据库的文章,没想到引起了很多网友的热议,其中大部分网友是表示认可、肯定;当然其中也有个别网友朋友提出了质疑和疑问,甚至抵制,这类朋友大致的观点总结一下就是:1、你们MogDB是基于openGauss数据库的二次开发增强,既然openGauss我用起来感觉不好用,自然MogDB也不好用。2、openGauss是基于开源PostgreSQL9.2,还是停留在9这个版本,太老了。3、直接干脆从PostgreSQL不香吗?

2024-06-11 13:34:39 807

原创 不得了!这个国产数据库居然实现了Oracle聚合函数vm_concat

在开源PostgreSQL版本中有string_agg函数实现类型功能,MogDB中除了支持string_agg之外,同时还支持listagg(是的,你没有看错,兼容Oracle 12c的listagg函数),也自带了wm_concat。然而,很多应用程序在12c或19c中可能自定义了类似wm_concat的函数,例如 my_wm_concat。这些函数被广泛使用在应用程序中。MogDB中的wm_concat、string_agg、listagg都可以实现类似oracle 中的wm_concat函数功能。

2024-06-04 17:00:10 273

原创 震惊!没想到这个国产数据库可以白嫖!

MogDB是 EnMotech openGauss DataBase Enterprise Edition 的缩写,是云和恩墨以华为 openGauss 开源数据库为基础,投入研发力量,围绕高可用、安全、自动化运维、数据库一体机、SQL审核优化等企业需求推出的整体解决方案。另外MogDB常见的部署架构是1主2从或者1主3从,1级联。有兴趣可以看看官方文档,针对每个小版本的一些增强改进,例如: https://docs.mogdb.io/zh/mogdb/v5.0/5.0.6。支持,目前已经银行上线案例了。

2024-06-04 12:58:16 702

原创 高级诊断课程第4课 - crash案例分享及关于large pool你需要知道的事儿

我们看到DBW0进程的flags是DEAD,表明该进程挂掉了,而且产生该dump的时候,已经发现10s之前就死掉了(而system statedump的时间是ACTION NAME:() 2024-05-17 11:45:11.918)。实际上Oracle的large pool 大小对于rman的使用,也是有一个内存估算的算法的;那么这里说到rman备份。因此,最后我们再回到本文的案例中,实际上在中间30s的时间内,数据库出去空载的可能性并非没有,当然如果是7x24业务系统,那么也不排除进程可能僵死了。

2024-05-20 09:44:46 667

原创 关于数据库选型,CIO/CTO 看这篇就够了

客户就给我反馈过,数据库原厂根本支持不了,本地一个人都没有,而且据了解,其他省项目多,本地招聘的原厂售后工程师,基本上都是安装部署,故障处理大都不会,因为很多都是刚毕业甚至毕业不久的人,总之,售后支持能力确实良莠不齐。即使IT能力较强的用户,很多大都是依赖第三方运维,自身的IT运维能力是欠缺的。本着好奇的心,我查了一下pg14官方公布的代码贡献者的分布,发现我们和老大哥的比例加起来14%左右,几乎只有漂亮guo的一半(当然这里是只是统计的人数,如果要看代码量的话,其实china是非常少的。

2024-05-18 16:00:30 378

原创 JDBC调用MogDB存储过程返回ref_cursor的方法和注意事项

原因是在产生ref_cursor的时候,如果没有设置autocommit为false, 则内部自动提交,建立的ref_cursor对象在事务外不可见。MogDB在处理存储过程的时候,有时候需要返回结果集,类型为ref_cursor,但有时候可能会报错。该存储过程有两个OUT参数,其中一个返回结果集(sys_refcursor),返回的行数根据第一个参数的长度而定,接下来看看代码。根据我们这几年的数据库国产化改造经验,给大家分享一下JDBC调用 MogDB存储过程返回ref_cursor的方法和注意事项。

2024-05-11 22:09:32 304

原创 从Oracle 23 AI:又甩开国产数据库几条街

实际上对于修改单个pdb的状态(open、restoration、upgrade 3种模式),非常的实用,想想几年前我们修复一套12.2 cdb多租户数据库的时候,恢复好一些pdb之后,本来想暂时恢复部分业务,但是发现在恢复其他pdb的时候,还需要反复去操作cdb甚至重启,因此就非常的麻烦。昨天蓝星最强的关系型数据库Oracle发布了最新版的Oracle 23 Ai,实际上很早之前我们就测试并了解了一些Oracle 23c的内容,没想到正式Release的时候,直接改名为Ai版本了。我认为是非常实用的。

2024-05-04 12:45:32 1179

原创 15年数据库老司机:100TB以下的库不需要分布式

假设某银行核心系统有3个核心业务,分别是ABC,那么针对前面提到的方案A,通常分布式数据库场景会建议用户将ABC 3个业务分别运行在3个不同的IDC节点,这样可以避免跨界点查询性能衰减、同时还真能真正实现业务多活,假设我A机房坏了,那么也就最多影响A业务而已,BC集中中的业务是可以正常跑的。实际上对于此类重要大型核心系统,如果我们在进行国产化的时候,我想不应该去其TPS,更应该关注的是如何最小化业务改造的情况下,存储过程在国产数据库上也能跑的如此高效,更应该去关注数据库的内核,比如优化器等等。

2024-04-27 23:48:56 922 2

原创 MogDB如何兼容Oracle的管道函数

在之前很多数据库国产化改造项目中,我们遇到了很多难题,其中一个难点在于重度使用Oracle的一些用户使用了大量的管道函数(pipeline)。在之前的版本中,由于MogDB还不支持pipeline,因此给我们造成了不小的麻烦。但是凭借团队极强的代码改写和优化能力,我们能够完美的解决这个问题。针对不使用table()函数的方式,这里我们也提供了2个改写的方法。方案2区别不太大,主要是函数部分与上面稍有区别,如下是改写后的代码,以供参考。另外还有2种处理方案,这也共享一下改写示例代码,供大家参考,如下所示。

2024-04-25 11:35:52 376

原创 DBA以后真的只能去开滴滴了吗?

上周某微信群关于DBA的话题讨论的非常火热,当天由于比较忙,因此没有参与太多讨论,现在回想起来,这个话题还是蛮有意思的。

2024-04-23 21:45:24 828

原创 DBA真的以后只能去开滴滴了吗

再回到前面说MySQL DBA工资比oracle高这个话题上来,严格上来说,我国内互联网快速发展那些年,带动了MySQL的蓬勃发展,而相对而言,MySQL人才又相对紧缺,物以稀为贵,那么自然水涨船高!有朋友说之所以是这个情况,可能也跟国内搞优化器的人才缺乏有关,虽然国内数据库厂商有数百家,每家都有一些内核开发人员,然而其中大部分内核开发人员都是做存储引擎的,真正擅长SQL引擎的人并不多。上周某微信群关于DBA的话题讨论的非常火热,当天由于比较忙,因此没有参与太多讨论,现在回想起来,这个话题还是蛮有意思的。

2024-04-23 21:43:54 950 4

原创 MogDB 5.0.6 这个特性真让人喜欢!

在2024年3月30号,MogDB发布了最新版的5.0.6版本,其中引入了一个比较有意思的小特性,用于保护备机不被switchover或者failover命令拉起提升为主库,使用户可以对指定备机升主行为进行控制。当我们kill掉114 主节点上的进程后,我们可以看到集群failover到了117节点上了,主库不在往115上做切换。符合预期,跟前面的验证一样,主库被外面switchover到了节点3,也就是117号节点。如上面的测试,CM做了切换,将114提升为了主库,此时我们的115节点变成了备库。

2024-04-17 17:32:04 290

原创 Mogdb双网卡同步最佳实践

例如,FIRST 2 (node1,node2)表示选择node1作为同步复制的第一备机名称,node1作为同步复制的第二备机名称。这样的目的主要是为了安全,避免淡点故障。这里我们先不展开讨论。zone1~3 用于定义机房,分别表示主用云,备用云,线控站, 不同机房配置独立虚拟IP,分别为192.168.3.30,192.168.1.30,192.168.4.100,192.168.5.100。2、主用云和备用云同步是单网模式,线控站有独立的A网和B网双网模式,A\B网通过云出口交换机与主备云主机互通。

2024-04-09 21:56:59 876

原创 当MogDB遇到标量子查询中有limit或rownum怎么办

在过去的一些项目中,我们发现对于标量子查询带limit或者rownum的情况下,Oracle的性能非常高效,而MogDB的性能似乎差强人意,那么如果在使用MogDB的过程中遇到了这样的场景,该如何进行优化呢?可以看到,在Oracle 中该SQL执行效率非常高效,毫秒级返回结果。然后在早期的MogDB版本中,处理该SQL性能并不高高效,会走bitmap index scan。从第一次执行的情况来看,该SQL需要10多秒,简直是比Oracle慢太多了,无法仍受。我们可以看到此时执行计划正常了,快如闪电了。

2024-04-06 20:34:52 317

原创 碉堡了!DBMind SQL Rewriter 可以进行SQL自动改写

MogDB 3.1版本在AI4DB方面又有很大的增强,其中有一个非常重要的组件DBmind,引入了一个SQL改写工具即 SQL Rewriter。根据预先设定的规则,将查询语句转换为更为高效或更为规范的形式,使得查询效率得以提升。测试脚本准备完毕之后,我们就可以使用DBmind来验证一下其改写能力了。接下来我们就来测一测DBmind的能力,这里我就为大家揭开神秘面纱。当然对于其支持的自动改写规则,也并非是所有的都支持,目前暂时支持如下的一些rule。最后我们来看看dbmind执行的结果如想象的那般神奇。

2024-04-06 20:32:33 233

原创 关于数据库国产化的10大真相

说到这里,还想起几年前的一个Case,某客户DB2出问题了,影响较大,苦于大家对DB2对运维能力的担忧,客户下定决心想将其改造成Oracle,由于数据库超过100TB,因此我们报了数十万的数据迁移费,然而应用厂家报价超过达到了8位数,几乎重新开发一套应用了,虽然我们都知道应用要大幅改造,但是这确实有点狮子大开口,客户最后咬咬牙,放弃了。近几年我也接触过不少国产数据库了,当然都不精通,只是入门并有所了解而已,比如达梦,openGauss,OceanBase,TDSQL,GoldenDB等。

2023-12-26 11:58:39 331

原创 如何拯救一个10多年的老库

尽管如此,改了几个block,包括将上述报错的回滚段drop掉,我发现exp数据的时候,仍然会报错ora-01555,那么大概率是读写的部分block还是有一些异常,既然如此就推一下scn(因为看alert log还发现了零星的ora-00600 2662 错误)。最开始本想使用event 10015 来推scn,发现并不起作用,既然如此就使用oradebug poke操作吧,需要注意的是,hp unix环境的scn 高位在前面,因此poke的时候注意level(16进制)。已经10多年过去了。

2023-12-26 11:55:16 69

原创 达梦数据库学习笔记之 — 线程架构

达梦数据库学习笔记之 — 线程架构

2023-02-03 12:42:03 530

原创 从Page结构来看达梦数据库是不是纯自研

达梦数据库 page结构

2023-02-03 12:30:44 1572

原创 MogDB 学习笔记系列之 — 认识checkpoint

原文链接:http://www.killdb.com/2021/12/01/mogdb-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E7%B3%BB%E5%88%97%E4%B9%8B-%E8%AE%A4%E8%AF%86checkpoint/我们继续学习了解MogDB的核心线程。对于关系数据库而言,检查点是一个尤为重要的机制,检查点机制的优劣可以说决定了数据库性能的高低和稳定性。这里我们继续来学习了解在MogDB数据库中,checkpoint机制是怎么样的。78

2021-12-06 22:13:32 912

原创 MogDB学习笔记系列之 — 认识 pagewrite线程

原文链接:http://www.killdb.com/2021/12/01/mogdb%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0%e7%b3%bb%e5%88%97%e4%b9%8b-%e8%ae%a4%e8%af%86-pagewrite%e7%ba%bf%e7%a8%8b/http://www.killdb.com/2021/12/01/mogdb%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0%e7%b3%bb%e5%88%97%e4%b9%8b-

2021-12-06 22:09:36 846

Oracle_RAC_深度解释

详细解释oracle rac 心跳,脑裂等相关知识

2011-10-24

空空如也

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

TA关注的人

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