问题描述 最近遇到的一个问题,两节点linux7环境11.2.0.4版本rac。使用scanip进行连接经常性报错ORA-12537: TNS:connection closed 问题分析过程 第一步缩小问题的范围 分别对scanip,vip,物理ip总计5个ip进行测试 tnsping结果,全部通过 sqlplus 连接测试(使用了ezconnect的方式)发现2号节点的vip以及物理ip无法连接报错ORA-12537 通过scani...
2020-12-29 14:36 167 0
表结构 该表大约5000条测试数据 原sql SELECT t1.* FROM TEST_TREE_TABLE_GEN t1 WHERE EXISTS ( SELECT 1 FROM TEST_TREE_TABLE_GEN t2 WHERE t2.CLASS_NAME LIKE CONCAT (CONCAT(‘%’ ,’1-1-1-1-1-1’), ‘%’) AND t2.org_identity = ‘ORG_ROOT’ AND t2.tree_path LIKE CONCAT (CONCAT(‘%’, t1. ID), ‘%’) ) ORDER BY t1.tree_sorts ...
2020-09-07 15:32 1861 0
mysql 5.7.20升级到当前最新的5.7.31 ,Windows环境 关闭并删除mysql服务 首先在服务窗口关闭mysql服务 E:/MySQL/mysql>cd bin E:/MySQL/mysql/bin>mysqld —remove Service successfully removed. E:/MySQL/mysql/bin>cd .. E:/MySQL/mysql>cd .. 替换mysql 相关文件 将mysql文件夹改名,然后将新版本解压命名为mysql将my.ini和dat...
2020-08-20 09:50 2400 0
截图来自mos Doc ID 2540148.1
2020-08-19 11:27 1824 0
前几天在做sql优化的时候在访问比较频繁的一张业务表上创建了1条索引,在第二天出现了严重的负面影响,多个业务sql访问变慢了10倍左右。这些sql均比较复杂,引用了多个视图,其中一个视图中join了创建索引的业务表,并且表连接的列正是创建了索引的列。 仔细看了执行计划,发现在执行计划的某一步基数估算上出现了偏差,于是对重新收集了统计信...
2020-08-17 10:33 1845 0
错误提示如下: 根据报错在mos检索出的信息 从上述的信息中可以看到即报错出现在日志中提示的这条sql中,且和lob字段有关,单独在plsql中执行该sql并没有发现异常,分析了一下sql,发现使用了WM_CONCAT函数,这个函数是oracle不推荐使用的,在oracle10g以及oracle11g的早前版本(11.2.0.1)返回值为varchar2,但是后期的版本返回值为lob类型,在...
2020-08-12 11:40 1832 0
2020-08-12 11:40 1857 0
来自同事咨询的一个问题:mysql数据库的服务器修改时间后数据库不能启动,问有没有办法处理? 我们知道一般情况下大部分数据库是不允许向前改时间的,即不能修改为比服务器时间更早的时间,因为数据库一些功能涉及到使用当前时间以及业务上可能会用到时间这样会产生不可预知的后果。 那么向后改时间呢,一般是相对安全的,当然这里不考虑集群、...
2020-07-30 16:39 1830 0
之前有看到有同事用plsql的分步测试功能一直点下一步来查看存储过程的执行效率分析问题,因此发现很多人并不知道oracle的DBMS_PROFILER功能,因此分享一下。 oracle有一个DBMS_PROFILER包是一个隐藏的功能,在创建实例的时候默认不安装,这个包的功能就是分析存储过程的。可以记录存储过程执行的细节,比如某个循环,循环了多少次,sql执行的时...
2020-07-30 15:00 1876 0
说明 通常需要优化的sql都是一些相对复杂的sql,有时候需要比较长的时间才能做好优化工作。例如创建合适的索引,尤其是有些几百行以上的复杂的sql查询要创建多个列的联合索引,如果自己去看可能比较费力。其实对于这种情况,完全可以用oracle自带的一些工具来做,比如STA(SQL Tuning Advisor),但是一般的介绍STA使用em可能比较方便,很多时候...
2020-07-30 14:19 2332 0
说明 每次resetlog产生一个新的incarnation,因此官方给出的常规方法是在每次做完不完全恢复后则应该立即备份数据库。跨越incarnation的恢复属于非常规操作,是应该尽量避免的。 简单测试一下跨incarnation的恢复过程,测试过程如下 1,备份 2,恢复使用resetlog打开数据库 3,切换归档,第二次备份(没有意义仅作为保留现场),切换归档——-保...
2020-07-29 17:30 1851 0
创建测试表 SQL> create table t2 as select * from dba_users; Table created. SQL> select user_id,dbms_rowid.rowid_relative_fno(rowid) file#,dbms_rowid.rowid_block_number(rowid) block# from xc.t2; USER_ID FILE# BLOCK# 0 4 283 5 4 283 84 4 283 9 4 283 73 4 283 74 4 283 57 4 283 53 4 283 42 4 283 30 4 2
2020-07-29 16:37 1928 0
Oracle中的Wrap功能可以加密函数和存储过程的SQL源码,这个工具可以进行解密,使用比较简单 下载地址 http://files.cnblogs.com/dint/DfUnWraper.zip
2020-07-29 15:47 2113 0
今天的问题 今天接到了一个客户发来的expdp导出的日志,内存不足导致导出失败,同时有部分业务也会报数据库相关的错误。 然后我要了操作系统的信息 从上面的信息可以看到是32位的11.2.0.1版本的数据库装在了64位Windows上。 去年的一例问题 去年也是有遇到32位的oracle数据库装在64位Windows,当时是这样报错 然后调整了内存,数据库就变成了这...
2020-07-21 15:18 1820 0
问题描述 mysql部署在一台2路24核48线程、256G内存的服务器上(服务器上还有Nginx运行)。 该业务为oa业务,因此早上是登陆高峰期,在此期间出现了mysql将服务器cpu耗尽,进而导致业务受到影响(Nginx挂了,业务整个就停了)。 问题分析 第一步: 使用linux的top命令追踪,发现是mysql进程占用了几乎所有的cpu资源,得到mysql的进程号。 第二步...
2020-07-21 10:30 2055 0
in memory这个特性在很多文章和书籍中有提到,但是在本次的案例中这个特性引发了负面影响。 问题表现 Sql性能不稳定导致性能下降严重,业务几乎不可用。 在sql的等待事件中有大量解析相关的等待,pin s wait on x,以及PX Deq:Execution Msg这两种等待事件比较多,首先说明的是sql并未开启并行执行。 问题排查 1、首先尝试了固定执行计划,对于...
2020-07-20 15:35 1837 0
之前在客户现场看其他问题的时候发现数据库后台出现大量报错,留了截图,分享一下 12.2.0.1 容器数据库模式,报错信息如下: 在mos上进行检索,找到mos文档,如下: 容器数据库模式在管理后台job的时候的问题。
2020-07-20 14:58 1947 0
问题的起因 今天接到一个客户的电话,因为oracle的rman备份过多导致了磁盘用尽,引发了一些问题。当时的备份任务脚本还是我写的,因为时间已久有些记忆不清,因此再次确认了现场的情况:1,备份使用的磁盘足够大,而且未做他用;2,备份脚本有删除过期备份的命令,并且有效期窗口已经设置。但是现场当前的问题是备份很久未被正确删除了,因此导...
2020-07-20 11:32 1816 0
背景 客户部分数据库升级到的了12.2.0.1版本的容器数据库模式,然后在job管理上遇到的一些问题 问题一 部分运维人员习惯在pl/sql中管理job,但是12c版本的容器模式job是cdb管理的,连接到pdb上杀不掉pdb调用的job。这个问题只是一个小问题,影响的也是运维人员或者开发人员的不规范操作而已,问题比较大的是下面这个问题 问题二 问题描述如下: ...
2020-07-17 17:41 1874 0
问题起因 某系统数据库升级到12c后,某存储过程执行失败,现场同事反映使用pl/sql进行手工测试,报错为ora-03113 通信通道的文件结束 问题排查 1、在pl/sql中分步测试,在点击到涉及到xml解析的步骤的时候,进程突然中断,因此猜测可能是当前版本xml解析的bug,因为现场同事反馈该存储过程在升级前一直可以正常执行。 2、查看报错日志如下 trace...
2020-07-17 09:51 1881 3