首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >有没有更好的方法在包含数亿行的oracle表上添加多列索引?

有没有更好的方法在包含数亿行的oracle表上添加多列索引?
EN

Stack Overflow用户
提问于 2014-03-21 09:56:31
回答 1查看 40关注 0票数 1

我有一个数亿数据的表,上面没有任何索引,现在我想在它上面添加多列索引,同时这个操作不会影响在线环境,有没有办法将对在线环境的影响降到最低?

我尝试过直接添加索引:

代码语言:javascript
代码运行次数:0
运行
复制
create index give_integral_index on GIVEINFO(ssoid, integral_operate, operatestatus, source_name);

但失败了。

EN

回答 1

Stack Overflow用户

发布于 2014-03-21 18:07:53

你可以考虑:

  • 添加ONLINE子句-这允许在索引创建期间运行DML,但会减慢
  • 添加PARALLEL子句-这可能会快到DOP (并行度)倍,但它需要足够的资源让所有从服务器完成他们的工作。如果您的资源非常有限,请不要使用这个或使用低DOP。它还与添加NOLOGGING子句的ONLINE子句
  • 互斥-这将重做日志写入,使其运行更快,但在恢复的情况下,前滚将是不可能的

我会尝试在没有DML/DDL活动的窗口中使用尽可能高DOP的NOLOGGING + PARALLEL

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22548773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档