开发者社区> 问答> 正文

OceanBase数据库锁信息在哪个视图里面?

问题1:OceanBase数据库锁信息在哪个视图里面?官方文档不太好找
问题2:行锁信息也是在这里面查吗?

展开
收起
真的很搞笑 2023-09-13 19:39:33 809 0
来自:OceanBase
2 条回答
写回答
取消 提交回答
  • 问题1:在 OceanBase 数据库中,锁信息可以通过以下系统视图来查看:

    • sys.blocking_lock:该视图记录了被阻塞的会话以及阻塞会话的相关信息,包括 session_id、blocking_session_id、资源类型、资源 ID 等。您可以查询该视图来获取阻塞会话和被阻塞会话的详细信息。

    问题2:行锁信息也可以通过查询 sys.blocking_lock 视图来查找。在该视图中,可以根据资源类型和资源 ID 来确定是否是行级锁,并获取相应的会话信息。

    在 OceanBase 数据库中,除了 sys.blocking_lock 视图外,还有其他一些与锁相关的系统表和视图,如 sys.lock_wait_statsys.transaction 等。这些表和视图提供了更多关于锁和事务的信息,可以帮助您进行锁调试和性能优化。

    2023-09-15 10:54:21
    赞同 展开评论 打赏
  • 回答1:GV$SYSTEM_EVENT 租户级锁事件统计。 where WAIT_CLASS='CONCURRENCY' and event like 'latch:%'
    GV$SESSION_EVENT 会话级锁事件统计。 where WAIT_CLASS='CONCURRENCY' and event like 'latch:%'
    GV$SESSION_WAIT 会话级锁事件明细。 where WAIT_CLASS='CONCURRENCY' and event like 'latch:%'
    GV$SESSION_WAIT_HISTORY 会话级锁事件明细历史。 where event like 'latch:%'
    GV$LATCH 锁调用统计。
    可以发现锁事件里面有GV$SYSTEM_EVENT、GV$SESSION_EVENT、GV$SESSION_WAIT、GV$SESSION_WAIT_HISTORY四张表和上方的等待事件视图一样,其实锁也是等待事件的一种,所以在查询中添加上查询条件即可查询到锁事件:where event like 'latch:%'
    回答2:https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000034599,此回答整理自钉群“[社区]技术答疑群OceanBase”

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

相关电子书

更多
开源HTAP OceanBase产品揭秘 立即下载
云数据库OceanBase 架构演进及在金融核心系统中的实践 立即下载
自研金融数据库OceanBase的创新之路 立即下载