现状:一个表空间中存放了两个相互独立的表TBA,TBB。客户端100个同时作业,其中80个使用TBA,其余人使用TBB。
问题1:将两表放在同一表空间是否会影响性能?如果将两表拆到两个表空间是否会提高效率?大概能提高多少?
问题2:用alter table TBA move tablespace  DBSPACENAME;这样的语句移动了表到指定表空间,那么表TBA对应的索引、触发器、序列等是否也被移动到了目的表空间?还是索引、触发器、序列等根本就与表空间没有关系?没系统学过ORA,请知情人士赞助,不胜感激。

解决方案 »

  1.   

    问题1:
    不同的表放到不同的表空间,这是不必要的,Oracle性能优化中也没有这样一条建议.如果所有的表相占有自己的表空间,那一个数据库中的表空间比表的数据都多了.  
    性能的提高在于应用的设计,在于SQL语句的写法,使用的查询计划,使用索引通常会大大提高查询效率。
      

  2.   

    1.
    两个表放到不同的表空间会引起访问I/O的增加,判断数据库性能与访问I/O有关,访问次数越多,速度越慢
    2.
    移动了表到另一个表空间后,索引不会跟着移动,需要重建索引