2015-07-22 26 views
5

Oracle 10g kullanıyorum. ay beri bir tablo ile ilgili şu hata var:(Oracle): Kısmen düşmüş durumdaki sütunlar

ORA-12986: columns in partially dropped state. Submit ALTER TABLE DROP COLUMNS CONTINUE 

deyimi DAMLA KOLONLAR DEVAM TABLO mesai için başarısız ALTER.

Bu veritabanında hiçbir DBA ayrıcalığım yok.

Ne yapabilirdim? Tabloyu yeniden oluşturun &?

Bu, milyonlarca kayıt içeren büyük bir tablo.

Denedim Ne:

Bir zamanlar
  1. , ben kullanılmamış halde bazı sütunlar ayarlamak için aşağıdaki komutu yaptı: Sonra

    ALTER TABLE hr.admin_emp SET UNUSED (hiredate, mgr); 
    

    , ben aşağıdaki komutu verdi:

    ALTER TABLE hr.admin DROP UNUSED columns; 
    

    Sistem kilitleniyor, işlem çok uzun, bu yüzden hata veriyor.

    Artık tablo hr.admin, kısmen düşürülmüş durumda, iki sütun içeriyor ve ne ileriye ne de geriye doğru gidemiyorum. Bu neden olduğunu anlamıyorum. İKİ ==

    BİRİNCİ AŞAMA ============

    SQL> select * from user_unused_col_tabs; 
    
    TABLE_NAME COUNT 
    ----------- ---------- 
    TEMP  1 
    

    SAHNE:

  2. aşağıdaki adımları yapılmış

    , sistem AŞAMA İKİNCİ de kapatırsa ==========

    SQL> alter table temp drop unused columns; 
    
    Table altered. 
    

    ETAP ÜÇ =============

    SQL> select * from user_unused_col_tabs; 
    
    no rows selected 
    
  3. Checkpoint 500 seçenek aşağıdaki deyimi ile tekrar çalışıyorum

    :

    ALTER TABLE MYUSER.MYTABLE DROP COLUMNS CONTINUE CHECKPOINT 500; 
    

    CHECKPOINT 500 seçenek bana yardımcı olabilir mi?

+0

Ne demek "hatalar"? Tam hata mesajı nedir? –

+0

Oracle oturumu 48 saat sonra sona eriyor. Ben dba'ya soramam. – UltraCommit

+0

Hata mesajının ne olduğunu bilmiyorum, oturumun süresi dolar ve işlem bitiyor. – UltraCommit

cevap

0

Biz yaklaşık on iki kere peş peşe komutu için verdik: Biz birkaç kez başlatmak zorunda çünkü

ifadesi otomatik olarak her 48 saatte öldürüldü
ALTER TABLE MYUSER.MYTABLE DROP COLUMNS CONTINUE CHECKPOINT 250; 

, bu nedenidir.

Kısmen düşmüş durumdaki sütunları kesinlikle düşürmek için yaklaşık 500 saatlik ayrıntılandırma ... !!

CHECKPOINT 250'nin bir "taahhüt" yaptığını doğrular, böylece aynı komutun bir sonraki başlatmasında, durma noktasından başlarsınız.