加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在庞大的表中创建index / pk花费的时间太长了.我正在使用Oracle.

发布时间:2020-12-12 13:11:50 所属栏目:百科 来源:网络整理
导读:我有一张非常大的桌子,有大约2亿行.它根本没有索引/ pk.在这个表中选择(显然)运行缓慢.我决定使用3列创建PK.我是在一个测试环境中做到的,它有一个较小版本的表,它就像一个魅力. 所以,在回家之前我做了一个 更改表格 ADD CONSTRAINT PK_HUGETABLE PRIMARY KEY
我有一张非常大的桌子,有大约2亿行.它根本没有索引/ pk.在这个表中选择(显然)运行缓慢.我决定使用3列创建PK.我是在一个测试环境中做到的,它有一个较小版本的表,它就像一个魅力.

所以,在回家之前我做了一个
更改表格
ADD CONSTRAINT PK_HUGETABLE PRIMARY KEY(ID1,ID2,ID3);

我预计它会在晚上运行,但已经超过24小时,它仍在运行.

我知道如果我在开始查询之前保留了会话ID,我就可以在V $SESSION_LONGOPS中跟踪它.但我没有.

有什么方法可以检查我的查询是如何进行的,或者它还需要多长时间?

您仍然可以查询V $SESSION_LONGOPS.如果你运行类似的东西
SELECT sid,serial#,start_time,sofar,totalwork,time_remaining,message
  FROM v$session_longops
 WHERE time_remaining > 0

你可能只会看到昨天开始的一个会话,其他列应该证实会话已经完成了很多工作. MESSAGE还应表示类似于HUGETABLE的完整扫描.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读