rt 急等现在在别的session中insert了几百万的数据,但是没有提交,session已销毁,数据还在,但是没有提交,请教各位大仙如何提交这些数据?

解决方案 »

  1.   

    不知道 commit force 可不可以  你试试
      

  2.   

    session已销毁,?
    那数据要不提交要不就撤销,怎么会还存在?
      

  3.   


    session已经销毁,数据还在?在哪个地方?如果数据“还在”,是否意味着已经提交了。
    这说法有些自相矛盾了,或者我理解错了。
      

  4.   

    我也不解为何“还有” 一个session 销毁 应该 commit 或 rollback。
    如果说表空间出现增长,是否是因为 缓冲区可能是 因为大量数据 未作COMMIT ,DBWR 在一些特定状态下
    1. ckpt : checkpoint
    2. db cache 空间不够
    3. time out  3秒
    4. alter tablespace **  offline;
    5. drop table ***;
    6. truncate table
    已经将一部分未提交数据写入磁盘,该部分数据 会有状态位 是未提交。  
    可能(需要高手指明) 是否高水位会增高 即便是 ROLLBACK 之后。
      

  5.   


    -- 没有这一说法!-- 要是有这一说法的话,那就没有session这一说法啦!
    -- 任何会话都是独立存在的,相互没有任何关系!-- 就算你执行commit操作也只能在某一个会话中commit,不会影响其他会话中未提交的数据变为已提交!
    -- 这也是为了保证数据的完整性!
      

  6.   

    -- 请参考:http://forums.oracle.com/forums/thread.jspa?threadID=852170Hi, everyone,
    A quick question, can a DBA commit other session's transaction?If so, how?
    Thanks!
    Alex 
     
     user097815  
     Posts: 963 
    Registered: 04/09/08  
      Re: DBA commit other session's transaction? 
    Posted: 2009-1-27 上午11:43    in response to: alexlizn   Helpful 
           Reply  
     
    From what i know, its not possible. As a dba can monitor a session, but cant commit the changes. It only the user who open the session can commit that changes. Again its just my thinking. But there are experts here and ppl on here with lots and lots of knowledge can answer ur question. But from what i know its not possible.