暂无图片
最近遇到特鬼的一件事情:oracle 19c环境下相同的任务在生产环境高端硬件跑不过测试环境的烂机器
我来答
分享
四九年入国军
2024-04-20
最近遇到特鬼的一件事情:oracle 19c环境下相同的任务在生产环境高端硬件跑不过测试环境的烂机器
暂无图片 25M

生产环境:1.4T内存+288个CPU,19.21 rac,跑这个任务是单机跑的(关闭了一个节点集群)

测试环境:940G内存+160个cpu,19.13 单机


   同样的任务在生产环境一跑就是cpu100%,cpu高的sql实际很简单,都走的索引,和测试环境没区别,生产环境搜集的awr报告显示的指标全部都放大几千倍,很离谱!!我都怀疑是新机器有问题了,苦于找不到证据,想哭呀

我来答
添加附件
收藏
分享
问题补充
12条回答
默认
最新
四九年入国军

又搭建了一套普通x86服务器+原来的存储,测试结果和测试环境一样都很快。应该就是flex由于某些原因cpu 性能没发挥出来

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
四九年入国军
暂无图片 评论
暂无图片 有用 1
打赏 0
四九年入国军
暂无图片 评论
暂无图片 有用 1
打赏 0
手机用户5351

12412341234

暂无图片 评论
暂无图片 有用 1
打赏 0
Will

可比较"IOStat by Function summary"那部分,"Reqs per sec"部分测试比生产的IOPS多了几百倍,但平均延迟只有其1/10,是生产的存储出了问题。

暂无图片 评论
暂无图片 有用 0
打赏 0
四九年入国军
题主
2024-04-21
没发现存储写有问题,且trace 里面lgwr 的trc也没有写特别高的告警-最高500ms的波动告警,没几条
Will
答主
2024-04-21
可查看 GV$IO_OUTLIER , GV$LGWRIO_OUTLIER, GV$KERNEL_IO_OUTLIER , 里面的单位是毫秒
Will

另外可检查 cdwhaypswk5mw 和 3ts59ykf1hs9p 这2个SQL的执行计划看有没有走索引

暂无图片 评论
暂无图片 有用 0
打赏 0
四九年入国军
题主
2024-04-21
这2个正常
Will
答主
2024-04-21
从ASH上看,cdwhaypswk5mw是走了全表扫描
一般
2024-04-21
IOStat by Function summary里 Direct Reads 705M,这么一点,不应该是这个问题
一般

生产环境的awr是全的吗?

生产读了250.9G,写了3.7T

测试读了1.2T,写了3.4T


暂无图片 评论
暂无图片 有用 0
打赏 0
四九年入国军
题主
2024-04-21
awr是全的,主要sql的执行次数都差不多
aknight

top 5 wait. read by  other session 有争用,可以进一步查查哪些块,调整下


暂无图片 评论
暂无图片 有用 0
打赏 0
N
nick_liu

SQL ordered by Reads 

SQL Module 列多数都是自动维护计划任务 DBMS_SCHEDULER,关闭吧

查看自动维护计划状态

SELECT * FROM DBA_AUTOTASK_CLIENT;

关闭自动维护计划

BEGIN
dbms_auto_task_admin.disable(
client_name => 'auto optimizer stats collection',
operation => NULL,
window_name => NULL);
END;
/

BEGIN
dbms_auto_task_admin.disable(
client_name => 'auto space advisor',

operation => NULL,
window_name => NULL);
END;
/


BEGIN
dbms_auto_task_admin.disable(
client_name => 'sql tuning advisor',

operation => NULL,
window_name => NULL);
END;
/

暂无图片 评论
暂无图片 有用 0
打赏 0
nick_liu
答主
2024-04-23
也可以只关闭,1 sql tuning advisor,2 auto space advisor
张鹏远

生产环境中存在数据库自动任务,可能会对测试产生一定影响,建议规避开数据库自动收集统计信息时间的时间段进行测试,或调整自动收集统计信息的时间段。

call dbms_stats.gather_database_stats_job_proc ( )
暂无图片 评论
暂无图片 有用 0
打赏 0
四九年入国军

原厂的目前还在排查,flex 服务的numa已关闭,cpu的节能模式已关闭,跑批测试结果依旧,感谢各位,有新进展我再答复,先关闭了

暂无图片 评论
暂无图片 有用 0
打赏 0
广州_老虎刘

回复已删除 

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
oracle执行计划问题
回答 5
原SQL将righ join改成inner join是没问题的, 因为这个right join本身就是一个inner join的逻辑, 但是
Oracle undo_retention 加大到多少合适?
回答 2
已采纳
我们生产上一般是10800,这个也看你实际业务情况。先调一个值,然后观察下,再调整。
在oracle linux6 的哪个版本上可以支持 11g 的ACFS驱动?
回答 2
上传附件:ACFSSupportOnOSPlatforms.(DocID1369107.1).pdf
静默安装Oracle,执行安装命令时,总出现unzip的使用?
回答 8
信息不够,多贴出来点信息才好知道问题
关于Oracle数据库审计,大家是怎么做的
回答 4
回复章芋文:感谢你的回答。1.数据库自带的audit审计,如果要审计DML操作,要开到DBEXTENDED级别,对数据库的影响可能较大,所以一直很犹豫要不要开,不知道有没有公司会开到这个级别?2.AV
请问一下,oracle user_segments表的segment_name 字段以BIN$开头的是什么?
回答 1
是回收站里的数据段,可以使用showrecyclebin查看到回收站里的表
oracle 11G里面有几十个存储过程,这些存储过程是否确定定时执行了,执行后是否成功了,怎么看?
回答 3
不赞成用老式的JOBS,也不赞成自己在PROCEDURE里写运行日志。如可以,建议将这些跑批的任务加到SCHEDULE里。SCHEDULE是JOB的升级版,可记录每次运行的情况。以后直接查相关数据字典
各位有遇到AIX系统数据库sqlplu s直接出现Segmentation fault的吗
回答 2
是不是数据库实例异常重启过,之前的实例的共享内存没有释放,可以考虑重启下操作系统试试
ORA-04030故障
回答 1
检查mmontrace是否消耗大量内存,可能遇到bug了,workaround:altersystemset“ashsize”67108864scopespfile;altersystemseteve
想用虚拟机部署一套 windows 的11g rac,共享存储怎么模拟?
回答 3
vmware和VirtualBox都可以实现共享存储设定!