full dump sergeesen chine index ni bga gej haragdaad bga mortloo aimar udaan bgad bhin ene yundaa bdin bolo
rebuild all indexes:
DECLARE
BEGIN
FOR index_entry IN (select INDEX_NAME
from user_indexes
where table_name='MY_TABLE' and
index_type='NORMAL')
LOOP
dbms_output.put_line('ALTER INDEX ' || index_entry.INDEX_NAME || ' REBUILD');
EXECUTE IMMEDIATE 'ALTER INDEX ' || index_entry.INDEX_NAME || ' REBUILD';
END LOOP;
END;
/
Дээрхээс харахад
select INDEX_NAME
from user_indexes
where table_name='MY_TABLE' and
index_type='NORMAL'
энэ хэсгийн коммандыг өөрчилөн өөрийн хүссэн индексүүдийг гарган авах боломжтой.
sys хэрэглэгчийн хувьд: dba_indexes , энгийн хэрэглэгчийн хувьд: user_indexes -ийг ашиглан хэрэглэгдэж буй индексүүдийг гарган авч болно.
Мөн spool комманд ашиглан rebuild хийх коммандыг гаргаж авч болно. Жишээ нь :
SPOOL rebuild_indexes.sql
SELECT 'ALTER INDEX ' || a.index_name || ' REBUILD;'
FROM all_indexes a
WHERE index_name = DECODE(Upper('&1'),'ALL',a.index_name,Upper('&1'))
AND table_owner = Upper('&2')
ORDER BY 1
/
SPOOL OFF
-- Гарсан үр дүнг ажиллуулах
@rebuild_indexes.sql
1 Like