开发者社区> 问答> 正文

OceanBase数据库如果list的size教少就能执行成功,是什么参数设置影响的吗?

OceanBase数据库执行存储过程的时候,通过参数调用存储过程,如果list参数过多(size>1500)就会无故退出(时间1分10秒),如果list的size教少就能执行成功,是什么参数设置影响的吗?游标个数设置5000和超时参数都调整了,无效果

展开
收起
真的很搞笑 2023-12-24 18:42:51 55 0
来自:OceanBase
4 条回答
写回答
取消 提交回答
  • 可以尝试调整下表达式数量。

    alter system set _max_function_param_num=80000;
    

    ——参考来源于OceanBase官方文档

    2024-01-05 07:57:45
    赞同 1 展开评论 打赏
  • 天下风云出我辈,一入江湖岁月催,皇图霸业谈笑中,不胜人生一场醉。

    调整存储过程的输入参数数量,将其压缩为较小的数组或者使用分批次读取数据的方式,以减少存储过程的内存占用。
    检查您的服务器的内存和资源配置,确保它们足够支持存储过程的执行。
    检查您的存储过程的实现方式,看看是否有优化的空间。例如,您可以考虑使用SQL的窗口函数或者分区表等技术来提高存储过程的性能。

    2023-12-29 12:40:57
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    在 OceanBase 数据库中,如果 list 参数过多(size > 1500),执行存储过程可能会无故退出,这可能是由于存储过程的性能问题导致的。可以尝试以下方法来优化存储过程的性能:

    1. 调整存储过程的参数设置。可以尝试减少 list 参数的大小,或者尝试使用其他参数类型(例如数组)来传递参数。
    2. 优化存储过程的代码。可以尝试减少存储过程中的计算和 I/O 操作,或者尝试使用缓存来避免重复计算。
    3. 调整 OceanBase 数据库的配置参数。可以尝试增加 OceanBase 数据库的内存分配,或者尝试调整其他性能参数(例如调整连接数、调整缓存大小等)。
    2023-12-27 21:59:39
    赞同 展开评论 打赏
  • ORA-00600 是oracle模式
    社区版和企业版根据版本差异会有些细节问题e3a99d509d7a60821059ff90d3d1b30a.png
    ,此回答整理自钉群“[社区]技术答疑群OceanBase”

    2023-12-25 06:11:17
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
蚂蚁OceanBase数据库团队,用于OceanBase技术原理、运维经验和案例分享、对外交流。
问答排行榜
最热
最新

相关电子书

更多
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
阿里云瑶池数据库精要2022版 立即下载
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载