tôi đã sai lầm khủng khiếp trong việc tạo index SQL:Làm cách nào để kiểm tra trạng thái xây dựng chỉ mục trên Oracle 11?
create index IDX_DATA_TABLE_CUSECO on DATA_TABLE (CUSTOMER_ID, SESSION_ID, CONTACT_ID)
tablespace IDX_TABLESPACE LOCAL ;
Như Bạn có thể thấy tôi đã bỏ lỡ từ khóa "ONLINE" để tạo chỉ số mà không ngăn chặn bàn SẢN với việc sử dụng cao với 600m + hồ sơ. SQL được sửa là:
create index IDX_DATA_TABLE_CUSECO on DATA_TABLE (CUSTOMER_ID, SESSION_ID, CONTACT_ID)
tablespace IDX_TABLESPACE LOCAL ONLINE;
Tôi đã thực hiện nó trong Nhà phát triển PL/SQL. Khi tôi cố dừng chương trình, nó dừng đáp ứng và bị rơi.
Hệ thống sản xuất không hoạt động trong 9 giờ và sếp của tôi muốn phát nổ. : D
Có cơ hội nào để xem số phút còn lại của Oracle 11g để xử lý việc tạo chỉ mục này không? Hoặc có lẽ là có cơ hội để xem liệu Oracle vẫn làm việc trên yêu cầu này? (Nhà phát triển PL/SQL bị lỗi).
Đối với kẻ thù ghét: Tôi biết tôi nên làm điều này như đề cập ở đây: (source)
CREATE INDEX cust_idx on customer(id) UNUSABLE LOCAL;
ALTER INDEX cust_idx REBUILD parallel 6 NOLOGGING ONLINE;
Liên kết của bạn có vẻ không hợp lệ. Tôi hy vọng rằng bất kỳ bài viết nào bạn đang xem ít nhất đều nói về cài đặt 'skip_unusable_indexes' trước khi yêu cầu bạn tạo chỉ mục không sử dụng được và nó cho bạn biết thay đổi cài đặt song song của chỉ mục khi nó được xây dựng. –
Bài viết không, nhưng ý kiến làm, và cũng giải thích tại sao lời khuyên không hữu ích như bạn nghĩ. Tôi đang ở với Justin, tại sao bạn không giết phiên chạy chỉ mục xây dựng? –